【发布时间】:2009-09-14 22:45:29
【问题描述】:
我要编写一个 CMS,但现在我正在写下我的所有想法,并在开始之前尝试弄清楚我的所有概念。我被撕裂的一件事是是否使用模板语言并解析网站的页面,并用内容项替换模板标签,或者只是用直接的 PHP 开发网站并让 CMS 生成有帮助的数据结构。例如:
{navigation: products}
对比
foreach($cms_label['products'] as $product) {
echo '<li class="product_nav">'.
'<a href="products/{$product.id}">{$product.name}</a>'.
"</li>\n";
}
前者更简洁,但它需要发明一种语言,以及在显示之前解析每个页面。后者不太干净,但我认为如果 CMS 只为所有代码提供数据,它可以工作得非常好。但是,这会被视为将逻辑与表示混合吗?我考虑过的另一种选择是使用类似于模板标签的 PHP 函数:
<?php navigation('products'); ?>
你有什么想法?
请记住,我不需要做任何比在某个位置包含页面或写出无序列表更复杂的事情;其余由 CSS 处理。
【问题讨论】:
-
很确定这已经被问过很多次了。