首先在原文件中加载Smarty并进行模板渲染
<?php //加载Smarty require __DIR__ .'/config/config.php'; //模板渲染 $smarty->display('demo6.html');
之后创建一父模板,并在其中导入公共头文件和公共底部文件,并定义相关区块。
{* 导入公共头文件 *} {include file="text/header.html"} {block name="nav"}{/block} {block name="content"} <p style="font-family: 华文楷体;"> 虎扑5月13日讯 据The Athletic记者Bill Landis报道,湖人前锋勒布朗-詹姆斯近日陪伴大儿子Bronny在印第安纳参加青年篮球赛事时发生了 一件趣事。节选报道内容如下: </p> {/block} {* 导入公共底部文件 *} {include file="text/footer.html"}
公共头文件:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>{block name="title"}NBA资讯{/block}</title> </head> <body>
公共底部文件:
</body> </html>
最后在要渲染的html文件中,继承布局文件并实例化父模板中定义的区块,还可以对部分内容做相关引用。
{* 1.继承自布局文件layout.html *} {extends file="layout.html"} {* 2.实例化在layout.html中定义的区块 *} {block name="title"}{$smarty.block.parent}{/block} {block name="nav"} {* 引用布局文件区块中的内容 *} {$smarty.block.parent} <a href="#" style="text-decoration: none;color: deeppink;">首页</a> | <a href="#" style="text-decoration: none;color: deeppink;">NBA</a> | <a href="#" style="text-decoration: none;color: deeppink;">CBA</a> | <a href="#" style="text-decoration: none;color: deeppink;">电竞</a> {/block} {block name="content"} {$smarty.block.parent} <p style="font-size: 18px;">到了比赛下半场的某个时刻,勒布朗希望确保裁判知道对面的Bates Fundamentals队的替补席旁站着两个教练,这是违反比赛规则的。这一点很可笑,考虑到勒布朗自己几乎化身为教练,他是整个球馆内最引人注目的人,过去20分钟内他都在场边站立、走动和呼喊,尽管理论上讲他并不属于替补席人员。</p> <p style="font-size: 18px;">一名裁判笑着向勒布朗指出这一点,他也无法忽视这一投诉中的讽刺意味。</p> <p style="font-size: 18px;">勒布朗苦笑着,举起双手,退回他的角落位置。</p> <p style="font-size: 18px;">“<span style="color: red">我只是一名球迷啊。</span>”他说道。</p> {/block}