我最近开始使用Smarty,这可以大大减少网页中的样板代码。使用Smarty的模板模板
如何通过使用Smarty创建.php
和相关的.tpl
文件的模板来进一步减少样板代码?或者,是否有一个更简单的方法,如果不是那么“元”的方法呢?
例如,考虑一个网站,其中所有页面具有相同的菜单和边栏。可以使用Smarty为给定页面的每个菜单项生成HTML代码。有没有办法生成.tpl
文件,因为它们共享这么多共同点? (也许这样的事实,我的设计可以在两个层面上自动化,这表明设计很糟糕?)
这与使用一个PHP文件生成另一个文件一样简单吗?
为了提供更具体的例子,我使用Smarty生成了this web site的索引页。正如你所看到的,otherpages的some已经足够接近我认为可以更简洁地生成HTML。我认为为每个页面生成Smarty模板的机制是合理的方法,但我并不确定如何继续。
相关SO问题
这个问题,Calling Smarties display() method multiple times vs using includes,指的是模板继承,这可能是我想要得到的OOP模拟。
你在找什么信息没有被其他问题回答?答案是{include}是在其他模板中重复使用模板的好方法,它可以做到你想要的。 – Danack
另一篇文章完全回答了它。我把这个标记为重复。如果主持人认为由于措辞不同可能成为这个问题的有用路标,我没有立即删除。 – mac389
[Calling Smarties display()方法多次vs使用包含](http:// stackoverflow。com/questions/8019093/calling-smarties-display-method-multiple-times-vs-using-include) –