Smarty и PHP
|
|
selbus | Дата: Пятница, 26.03.2010, 02:06 | Сообщение # 1 |
Продвинутый
Группа: Модераторы
Сообщений: 177
Статус: Offline
| Здесь будут выкладываться различные приемы и решения по использованию Smarty
|
|
| |
selbus | Дата: Среда, 09.06.2010, 12:31 | Сообщение # 2 |
Продвинутый
Группа: Модераторы
Сообщений: 177
Статус: Offline
| Простой пример подключения и использования Smarty. Code <?php // подключаем класс Smarty require_once('smarty/Smarty.class.php');
// Создаем объект класса $smarty = new Smarty();
// Устанавливаем папки шаблонов
$smarty->template_dir = 'templates'; $smarty->compile_dir = 'templates_c';
$news = 'Содержание сайта.' $smarty->assign('content', $content);
$smarty->display('index.tpl'); ?>
|
|
| |
kaiser | Дата: Пятница, 11.06.2010, 12:40 | Сообщение # 3 |
Знаток
Группа: Проверенные
Сообщений: 132
Статус: Offline
| А как реализовать некоторый шаблон в основном шаблоне? Проще говоря "шаблон в шаблоне".
|
|
| |
selbus | Дата: Пятница, 11.06.2010, 15:43 | Сообщение # 4 |
Продвинутый
Группа: Модераторы
Сообщений: 177
Статус: Offline
| Quote (kaiser) А как реализовать некоторый шаблон в основном шаблоне? Проще говоря "шаблон в шаблоне". Тут все предельно просто. В Smarty есть функция "fetch", каторая возвращает вывод шаблона в строковую переменную, вместо его отображения на экран. Code $str = $smarty->fetch("index.tpl"); echo $str;
|
|
| |
kaiser | Дата: Пятница, 11.06.2010, 19:52 | Сообщение # 5 |
Знаток
Группа: Проверенные
Сообщений: 132
Статус: Offline
| Понятно
|
|
| |
mcreyt | Дата: Воскресенье, 13.06.2010, 13:35 | Сообщение # 6 |
V.I.P
Группа: Администраторы
Сообщений: 79
Статус: Offline
| Можно еще воспользоваться функцией include. Code {include file="$tpl_name.tpl"}
|
|
| |
selbus | Дата: Вторник, 15.06.2010, 15:11 | Сообщение # 7 |
Продвинутый
Группа: Модераторы
Сообщений: 177
Статус: Offline
| В принципе да. Но только это вставляется непосредственно в шаблон.
|
|
| |
kaiser | Дата: Суббота, 16.10.2010, 03:47 | Сообщение # 8 |
Знаток
Группа: Проверенные
Сообщений: 132
Статус: Offline
| Столкнулся вот с такой бедой. Поменял кодировку в шаблоне с windows-1251 на utf-8. Так после такого изменения вместо русских символов кракозябли, а латиница отображается нормально. Это что получается, smarty глючит.
|
|
| |
selbus | Дата: Суббота, 16.10.2010, 03:54 | Сообщение # 9 |
Продвинутый
Группа: Модераторы
Сообщений: 177
Статус: Offline
| Smarty тут вовсе не при чем. Эта брода выростает от того, что сам файл шаблона сохраняется в кодировке ANSI. Проблема легко решается при помощи PHP Expert Editor. Открываем в ней файл и перед сохранинием заходим файл -> кодировка и меняем ANSI на UTF-8 и сохраняем. После этого должно быть все нормально.
|
|
| |
mcreyt | Дата: Суббота, 16.10.2010, 19:22 | Сообщение # 10 |
V.I.P
Группа: Администраторы
Сообщений: 79
Статус: Offline
| Smarty действительно тут не при чем. Smarty прекрасно работает с UTF-8.
|
|
| |