Вы не зашли.
Главная »
PHP » Smarty на примере модификации форума PunBB
Где-то я видел регистрация_функции() в смарти.
Еще чего подумал.
Ну допустим есть у нас некоторые исключения, при которых надо перенаправить пользователя, или оборвать выполнение скрипта.
Если в самом начале запускать смарти, то оно как бы лишний раз запускается.
А если все будет нормально, + кеш-смарти. То наоборот выигрышный запуск в самом начале, не?
Правда там еще этот смарти проверить должен, изменились ли данные или нет, чтоб выдать кеш-шаблон или вновь компилируемый, не?
Или при компиляции смарти приводит шаблон в нативный вид?
* А из нативного в статичный уже.
Отредактировано tipsun (2012.02.20 21:09)
tipsun, ну диагноз ясен.
Так же наблюдается синдром Флудераста.
Принимайте google 3 раза в день. И все пройдет.
Отредактировано tipsun (2012.02.20 22:10)
Там она все параметры в массив складывает, как я понял.
Это значит саму функцию тоже менять придется?
Код:
span style="color: #0000BB"><?php$smarty->register_function("date_now", "print_current_date");function print_current_date($params){ if(empty($params['format'])) { $format = "%b %e, %Y"; } else { $format = $params['format']; return strftime($format,time()); }}// теперь вы можете использовать ее в Smarty чтобы вывести текущую дату: {date_now}// или {date_now format="%Y/%m/%d"} чтобы задать формат. |
Отредактировано tipsun (2012.02.20 22:10)
tipsun, про скорость пока не задумывайся, доделаем.
на счет твоей функции, у смарти уже вроде есть готовые функции для работы с датой. почитай мануал по этому поводу. и желательно по 3 версии
Я не про дату, про дату я читал
Код:
{$var|date_format:'%d/%m/%y %H:%I:%S'} |
|
еще про default посмотрел (когда переменная не содержит значения, то выводится по умол.) |
Ну, по ситуации, заглядываю в мануал, бывает =) |
{$var|default:'no value'} |
. . . .
Я про $smarty->
register_function();
. . . .
Отредактировано tipsun (2012.02.21 15:03)
я по моему такой штукой даже и не пользовался.
А как быть с пользовательскими функциями и инклудами?
Если я ничего не упустил, то остался в файле wap/viewtopic.php только этот код:
#39.Там вроде случайно повторился.
Еще посмотрел стандартные шаблоны: include/template/
Там как бы совсем общее.
Ну я несколько раз смотрел, пытался собрать верх header.tpl и низ footer.tpl
Там например была ссылка на rss новости, указание кодировки, я сразу подставлял то, что по default идет из массива-источника.
Есть немного, но в правильности не уверен, еще раз буду смотреть, искать что упустил.
Отредактировано tipsun (2012.02.21 22:10)
главное чтобы архитектура правильно выстроена была)
Добавлено спустя 1 минуту 6 секунд: кстати, сегодня Smarty 3.1.8 вышел
Надо наверно все-таки мануал 3 на англ. смотреть и переводить. Пользоваться 3, а мануал за 2 смотреть - не логично
Добавлено спустя 5 минут 9 секунд: tipsun написал:
Там как бы совсем общее.
И там для вап только wap_main.tpl
Остальное для веб вроде.
Добавлено спустя 7 минут 57 секунд: Код:
<html> |
<head> |
<meta http-equiv="Content-Type" content="text/html; charset={$lang_common.lang_encoding}" /> |
<title>{$page_title|escape}</title> |
<link rel="stylesheet" type="text/css" href="{$smarty.const.THEME_DIR}/style.css" /> |
<link rel="alternate" type="application/rss+xml" title="{$pun_config.o_board_title}" href="{$smarty.const.PUN_ROOT}rss.xml" /> |
</head> |
<body> |
|
<div class="hd"> |
<img src="{$smarty.const.THEME_DIR}/imgs/logo.gif" title="{$lang_common.Forum} {$smarty.server.HTTP_HOST}" alt="{$lang_common.Forum} {$smarty.server.HTTP_HOST}" /> |
</div> |
|
<div class="hd_bott"> |
{$pun_config.o_board_desc} |
</div> |
|
<div class="in"> |
<div> |
-<a href="/rss.xml">RSS</a> |
<a href="{$smarty.const.PUN_ROOT}rss.xml">RSS</a> |
</div> |
</div> |
|
<div class="incqbox"> |
{$lang_common.Announcement} |
</div> |
|
<div class="msg"> |
{$pun_config.o_announcement_message} |
</div> |
Отредактировано tipsun (2012.02.21 23:11)