Z-BlogPHP主题制作教程#5:模板基本语言

以PHP为基础的开发的CMS当是用PHP代码,不过Z-BlogPHP主题模板和WordPress主题模版语言不同,模板不能直接使用<?php ?>和<? ?>标签,只能用{php}包含php代码。因为它是将template文件夹里面PHP文件再翻译一边,变成可辨识的PHP文件的(放置在compile文件夹下)。

所以呢,我还是先了解下一些基本点的Z-BlogPHP模板语言吧:

加载指令

加载指令有两种模式:{template:模板}和{module:模块}。我们普通的header.php,footer.php可以使用template加载,而“导航”、“最近文章”等模块就需要通过module来加载了,用起来就像这样:

{template:header}<!– 加载header.php –>
<body class=”multi”>
<div id=”divAll”>
<div id=”divPage”>
<div id=”divMiddle”>
……
<div id=”divNavBar”>
<ul>
{module:navbar}<!– 加载导航栏(navbar) –>
</ul>
</div>
<div id=”divMain”>
……
<div class=”pagebar”>{template:pagebar}<!– 调用分页pagebar.php –></div>
</div>
<div id=”divSidebar”>
{template:sidebar}<!– 加载侧栏sidebar.php –>
</div>
{template:footer}<!– 加载footer.php –>

输出变量或定义变量

Z-BlogPHP系统里面做了不少的变量,我们可以通过{$变量名}直接输出。比如:{$host}是网站的网址;{$name}是网站的正标题;{$subname}是网站的副标题;通过模版与模块标签,我们可以更好的使用Z-BlogPHP这些系统标签。我们可以给上面代码中补充一个标题了:

<div id=”divTop”>
<h1 id=”BlogTitle”><a href=”{$host}”>{$name}</a></h1>
<h3 id=”BlogSubTitle”>{$subname}</h3>
</div>
同样道理,如果系统中没有这个变量,我们是可以自己创造出一个变量:

{$ABC=”变量内容”}<!– 定义变量 –>
{$ABC}<!– 输出变量 –>

if判断和foreach循环
if和forech是计算机编程中常用到的逻辑判断,Z-BlogPHP为了方便大家使用也将这些编辑成基本语言了。我们现在做一个循环:当网站有文章时,依次显示这些文章的简介(post-multi),在里面再做一个判断,如果有置顶文章(post-istop),优先显示:

{foreach $articles as $article}
{if $article.IsTop}
{template:post-istop}
{else}
{template:post-multi}
{/if}
{/foreach}

直接运行PHP
如果你本来就掌握了PHP语言,一时有不能全掌握Z-BlogPHP模板基本语言,那也没有关系。因为你可以通过{php}来直接运行PHP代码:

{php}
global $actions;
print_r($actions);
echo ‘12345’;
{/php}

其他情况请参考:Z-BlogPHP 模板语言基本语法