Z-BlogPHP主题制作教程#11:sidebar.php和module.php

Z-BlogPHP主题模版的侧栏大体分为两个部分:sidebar.php和module.php。这两个是包含关系,sidebar.php就是一个外套,里面用 foreach 循环调用了多个module.php。

siderbar.php:
我们就先看下siderbar.php。这个文件比较简单,一般我都不写,使用程序默认的。默认代码是这样的:

{foreach $sidebar as $module}
{template:module}
{/foreach}
当调用侧栏文件时,直接循环输出module.php文件。Z-BlogPHP里面为了方便大家调用,准备了5个侧栏,他们的对应关系是这样的:

{template:sidebar}:默认侧栏;

{template:sidebar2}:侧栏2;

{template:sidebar3}:侧栏3;

{template:sidebar4}:侧栏4;

{template:sidebar5}:侧栏5。

module.php:
module.php就是一个单独模块的式样。既然它是模块,我们就可以用html自带的三个标签来做:<dl>(模块框架)、<dt>(模块标题)、<dd>(模块内容)。简单排下格式,就变成这样:

<dl id=”{$module.HtmlID}”>
<dt>{$module.Name}</dt>
<dd>{$module.Content}</dd>
</dl>
因为每个模块都有它固有的ID,为方便大家使用,我们就给dl架构上增加了一个ID。

然后我们强化下逻辑。模块标题有时候是被我们影藏起来的,那么就给它加上一个 if 判断:

<dl id=”{$module.HtmlID}”>
{if (!$module.IsHideTitle)&&($module.Name)}
<dt>{$module.Name}</dt>
{else}
<dt style=”display:none;”></dt>
{/if}
<dd>{$module.Content}</dd>
</dl>

另外,我们的模块可以选择判断是 <div> 还是 <ul>,那么再在<dd>里面套一层 if 判断,最终,我们基础的module.php文件就变成这样:

<dl id=”{$module.HtmlID}”>
{if (!$module.IsHideTitle)&&($module.Name)}
<dt>{$module.Name}</dt>
{else}
<dt style=”display:none;”></dt>
{/if}
<dd>

{if $module.Type==’div’}
<div>{$module.Content}</div>
{/if}

{if $module.Type==’ul’}
<ul>{$module.Content}</ul>
{/if}

</dd>
</dl>