2007年6月13日星期三

WP Theme 教程 #6d:搜索框和日历

尽管这篇的题目是 搜索框(Search Form)日历(Calendar),我同样也会介绍 元数据(Meta)

。让我们这一篇结束常规的 Sidebar,然后将在下一篇指出如何窗体化(widgetize)化 Sidebar,怎么样?好吧,让我们开始...


第1步:增加搜索框


在我给你需要输入的代码之前,打开记事本,保留空白,然后保存为 searchform.php(当然是和 index.php 在同

一个文件夹下)。把该文件 searchform.txt 中的内容拷贝到

searchform.php。就是这么多,从这点开始,让 searchform.php 文件保持单独。


在 index.php 文件,输入以下代码到 Sidebar 的最顶部:


<li id=”search”>

<?php include(TEMPLATEPATH . ‘/searchform.php’); ?>

</li>


add-search.gif


保存,然后刷新浏览器,结果如下:


search.gif


那么发什么了呢?



  • <li id=”search”> - 开始一个名字为 search 的列表条目,你给它了一个 ID,你就能够以后样式化

    它。

  • include() - 导入任何你想导入的文件。这和使用 WordPress 模板函数去调用些东西是不同的,因为 include() 只是

    简单导入已经存在的文件。这里是在 searhform.php 文件中的代码。被导入的信息应该在一个 blog 基本上不会被改变的。也就是

    说,我的搜索框应该看起来很像你的。

  • TEMPLATEPATH - 主题文件夹的位置,wp-content/themes/tutorial

  • ‘/searchform.php’ - 位置和文件的名字,/searchform.php

  • 在 TEMPLATEPATH 和 "/searchform.php" 中间的 把他们连接起来,所以最终得到:

    wp-content/themes/tutorial/searchform.php

  • </li> - 结束列表条目


注意,搜索框没有像 分类,归档,页面或者 Blogroll 一样的子标题。如果你愿意你也可以给它一个子标题,但是处于保持你的常规 Sidebar 和

widgetized 版本(我们将在下一篇讲述)的 Sidebar 尽可能接近,不要给它子标题。


第2步:增加日历


在搜索框或者页面链接列表下输入以下代码:


<li id=”calendar”><h2><?php _e(’Calendar’); ?></h2>

<?php get_calendar(); ?>

</li>


add-calendar.gif


保存并刷新浏览器,结果如下:


calendar.gif


发生了什么?



  • <li id=”calendar”> - 开始一个 ID 为 "Calendar" 的列表条目

  • <h2> - 开始一个子标题

  • <?php _e(’Calendar’); ?> - 输出 Calendar 这个词

  • </h2> - 关闭子标题

  • get_calendar() - 使用 get_calendar() 这个函数调用日历

  • </li> - 结束列表条目


这样日历就完成了


第3步:增减元数据


get_links_list() 函数下输入以下代码:


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

<ul>

<?php wp_register(); ?>

<li><?php wp_loginout(); ?></li>

<?php wp_meta(); ?>

</ul>

</li>


add-meta.gif


保存并刷新浏览器,结果如下:


(如果你没有登录 WordPress 管理)

meta-logged-out.gif


(如果你已经登录)

meta-logged-in.gif


那么这是怎么回事?

你开始一个列表条目(LI),跟着是一个子标题(H2) Meta。在子标题下,你嵌入了一个无序列表

UL)。最后把每个链接都放入了列表条目中(LI)。


wp_register() 这个函数产生了它自己的一组 <li></li> 标签,如果你没有登陆,它显示

注册(Register)链接,当你登录的时候,它显示的是 管理站点(Site Admin)的链接。
wp_loginout() 不会产生自己的列表条目标签,所以你需要手工输入列表条目标签,当你没有登录的时候,你得到的是

录(Login)
的链接,当登录的时候,你得到的是登出(Logout)链接。
到目前为止,wp_meta() 没有做任何事情,他在网页上和源代码中都不会产生东西,现在不要考虑 wp_meta(),实

际上你已经在使用它了。


到此为止,你应完成 Meta 并最终完成了常规的 Sidebar.



请查看教程目录:WordPress 主题教程系列



翻译自:WP Theme Lesson #6d: Search Form and Calendar

创建 WordPress 主题系列教程均为本站翻译,如要转载,请注明:转载自我爱水煮鱼和本文地址。

Orignal From: WP Theme 教程 #6d:搜索框和日历