|
|
|
|
|
для: Artem S.
(19.03.2005 в 18:49)
| | помоему в пхпбб используется система на основе smarty (по крайней мере примерно так написано в хелпе). | |
|
|
|
|
|
|
|
для: Sin
(19.03.2005 в 18:32)
| | Вы не так поняли. phpbb подключает файл /includes/template.php
Там описан класс и функции.
Потом создается объект класса templates
Чтоб использовать эти функции скопируйте себе этот файл, подключите и создайте объект $template | |
|
|
|
|
|
|
|
для: Artem S.
(19.03.2005 в 16:21)
| | Хм... класс.. так получается функции
set_filenames()
assign_vars()
pparse()
Это стандартные функции php? или я не так понял? | |
|
|
|
|
|
|
|
для: Sin
(19.03.2005 в 15:31)
| | Да, за это отвечает функция pparse()
Все что находиться между скобок { и } заменяется на значения, переданные функцией assign_vars().
P.S. Все это реализация шаблонов. Мне очень нравиться Smarty (http://smarty.php.net). Раньше я тоже использовал принцип из phpbb, пока не узнал про smarty | |
|
|
|
|
|
|
|
для: Artem S.
(19.03.2005 в 07:20)
| | Да вы примерно угадали, дело вот в чем
(немного уже разобрался и могу дать полную картину)
Сначало это
<?php
$template->set_filenames(array(
'body' => 'memberlist_body.tpl')
);
?>
|
потом делается это примерно это (кусочек из скрипта)
<?php
$template->assign_vars(array(
'L_POSTS' => $lang['Posts'],
'L_POINTS' => $board_config['points_name'],
);
?>
|
А в конце делается так
<?php
$template->pparse('body');
?>
|
т.е. как я понял все переменные передаются в фаил 'memberlist_body.tpl'
Который в свою очередь содержит такой вот примерный код
<tr>
<td>
{L_POSTS}
</td>
<td>
{L_POINTS}
</tr>
|
Вот вопросик, а вот этот {L_POSTS} заменяется на пост юзера благодаря процедурам выше? Или это можно добится и другими способами? | |
|
|
|
|
|
|
|
для: Sin
(18.03.2005 в 23:20)
| | Если не ошибаюсь - это строчка из кода phpbb форума.
Есть объект $template и для этого класса есть предопределенные функции.
В данном конкретном случае просто для шаблона указывается, какие файл(ы) будут использованы для построения страницы. | |
|
|
|
|
|
|
|
для: Sin
(18.03.2005 в 23:20)
| | Метод set_filenames объекта $template принимает в качестве аргумента массив, который формируется налету при помощи конструкции array. Массив содержит один элмент с ключом body и занчением 'memberlist_body.tpl'. | |
|
|
|
|
|
|
| Я вот опять полез скрипты разбирать и как всегда меня подвели мои знания. Подскажите пожайлуста что бы это делает
<php
$template->set_filenames(array(
'body' => 'memberlist_body.tpl')
);
?>
|
| |
|
|
|
|