这一篇我们主要讲解 wordpress 主题的侧边栏,让你很快掌握它的结构,并能编码和样式化它。

在开始侧边栏之前,这是现在 index.php 文件的样子。

第1步:创建 id 为 “sidebar” 的 div

首先让我们创建一个名字为 sidebar 的 div,这样可以把侧边栏中的所有东西都放入其中。在 container 的后面和 </body> 标签的前面输入以下代码:

<div class=”sidebar”>
</div>

第2步:给侧边栏的 div 添加无序列表

在新的 sidebar 的 div 标签中创建一个新的无序列表。

<ul> – 开始无序列表
</ul> – 结束无序列表

第3步:给这个无序列表添加原属

增加一个列表元素(li)到无序列表(ul)的中间并把一个子标题添加到这个列表中。

<li><h2><?php _e(’categories’); ?></h2>

</li>

注意添加制表符到<li></li> 标签之前为了代码缩进。

<li> – 开始列表元素
<h2> – 开始子标题
<?php _e(’categories’); ?> – 输出字符 categories
</h2> – 结束子标题
</li> – 结束列表条目

保存 index.php 文件并未刷新浏览器。现在应该可以看到 categories 子标题结构应该是这样:

子标题前面的小圆点指明这个子标题是在一个列表元素中(li)。如果无序列表(ul)有两个列表元素,那么将有两个小点。

第4步:添加分类链接列表

在列表条目中添加下面的代码:

<ul>
<?php wp_list_cats(’sort_column=name&optioncount=1&hierarchical=0′); ?>
</ul>

这里是上面代码的解释:

<ul> – 开始另一个无序列表
<?php wp_list_cats(); ?> – 调用分类链接列表
</ul> – 结束无序列表

保存并刷新浏览器。下面是分类链接列表的样子:

默认的分类是 uncategorized。如果你没有把日志发布到多个分类下面,那么你的列表链接列表应该是只有一个链接 uncategorized。

更进一步地解释道:

  • sort_column=name – 把分类按字符顺序排列
  • optioncount=1 – 显示每个分类含有的日志数
  • hierarchial=0 – 不按照层式结构显示子分类,这就解释了为什么子分类链接是列在列表中的第一级。
  • & – 每次增加另一个参数的时候,需要在它之前输入 & 用来和现有的参数区分开。如 &sort_columnoptioncount之间。

为什么不把 <?php wp_list_cats(); ?> 放入<li></li> 标签中呢?

当我们使用 wp_list_cats() 这个函数调用链接列表函数的时候,它会自动附上一组<li></li>(列表条目)标签在每个链接的左右。查看页面源代码;可以看到每个连接的周围都已经有一组列表元素的标签。

当处理侧边栏,无序列表和列表元素的时候,我们一定要记得规则 #1:按顺序关闭所有标签。