Глядя на фрагмент кода, который вы вставляете, я бы предположил, что tpl_set
устанавливает конкретные переменные в шаблоне - например, устанавливает значение feed_stories
шаблона переменной равным содержимому $feed_stories
. В конце функция render_template выбирает шаблон и отображает его.
Поскольку вы говорите, что хотите создать систему шаблонов самостоятельно, вот несколько указателей:
Самым базовым шаблоном может быть файл PHP, например:
//mytemplate.php
<h1><?php echo $title; ?></h1>
<p><?php echo $content; ?></p>
Тогда вы можете использовать это как
$title = 'some title';
$content = 'Hello world';
require 'mytemplate.php';
Это самый простой способ иметь шаблоны в PHP. При желании вы можете заключить описанный выше процесс в класс или набор функций, чтобы получить немного более понятный интерфейс.
Подход, используемый различными шаблонизаторами, такими как Smarty, заключается в том, чтобы иметь собственный синтаксис. Как вы, возможно, знаете, Smarty позволяет использовать {$foo}
для отображения переменных в шаблонах. Это работает так, что вы сначала предоставляете Smarty значения для каждой переменной в вашем шаблоне. При отображении шаблона Smarty выполняет поиск и замену в вашем шаблоне, заменяя синтаксис Smarty вашими значениями.
(На самом деле он этого не делает - сначала он преобразует его в код PHP и кэширует его, чтобы сделать его быстрее, но основная идея такова.)
Надеюсь, это поможет.