距上一篇介绍WordPress函数的相关文章已经过去了二十多天,今天,月夜就再次为朋友们送上一篇介绍WordPress函数的文章,仍然属于月夜的WordPress函数文章系列。本文接上文从这一系列的第36个函数开始,主要介绍的是一些比较杂乱的内容,使用上依然主要用在WordPress主题中。包括获取WordPress博客细节的几个函数,以及用于构架WordPress主题大框架的几个函数。 36.wp_get_post_tags()
该函数用来在某个文章页面或者根据某篇文章的ID来获取该文章的tag,获取的结果被放置到一个tag数组中。一个常见的使用方式如下:
if (is_single()){ $keywords = “”; $tags = wp_get_post_tags($post->ID); foreach ($tags as $tag ) { $keywords = $keywords . $tag->name . “,”; } echo $keywords; } 首先判断是否是单文章页面,如果是,则据当前文章的ID($post->ID)来获取当前文章的tag,然后取得其name($tag->name),并将其组合输出。
37.single_cat_title()、single_tag_title()
如名所言,这两个函数用来获取分类页面和tag页面的title,其通常的使用方式如:
<?php $str = single_cat_title(); echo $str; ?> 和
<?php $str = single_tag_title(); echo $str; ?> 然而,除此之外,single_cat_title()还可以用来在tag页面上获取当前页面的title;但single_tag_title()却不可用于获取分类页面的title。
38.get_settings()、get_option()
此二函数与前文用好WordPress不可不知的函数(三)中函数20.get_bloginfo()类似,使用方法也相同,可以通过后跟各种参数来获取WordPress博客的相关信息。 比如如下的调用方式:
get_settings(‘name’)或get_option(‘name’)
可以用来获取当前WordPress博客的标题。
39.wp_head()
该函数与前文用好WordPress不可不知的函数(五)中函数32.wp_meta()相同,是WP主题为WP插件留下的API Hook。
40.get_header()、get_footer()、get_sidebar()和comments_template()
这几个函数是用来在WordPress主题中获取并包含相应的文件的。比如:
get_header()用来包含当前主题文件夹下的header.php;
get_footer()用来包含主题文件夹下的footer.php;
get_sidebar()用来包含主题文件夹下的sidebar.php;
comments_template()用来包含comments.php。
需要注意的一点是,如果当前主题文件夹下缺少对应的文件,则函数会使用wp-content/themes/default/文件夹下的对应文件代替。 此外,以上函数后面都不能跟参数,只有get_sidebar()例外,因为一个主题中可以使用多个sidebar。形如get_sidebar(‘up’)的调用方法可将sidebar-up.php侧边栏模板文件包含到主题中。 除了以上几个函数之外,在主题中如果想包含一个具体的文件,还可以使用如下方式:
include(TEMPLATEPATH . ‘/***.php’)
如上的函数形式可以将当前主题文件夹下名为***.php的文件包含进来;其中TEMPLATEPATH是当前主题文件夹地址的一个引用(不含末尾的/,所以需要添加上)。
41.have_posts()、the_post()
这两个函数的使用范围有限,通常在WordPress的循环中使用,用以获取所有文章。其固定使用形式如下:
<?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> 此处显示文章 <?php endwhile; ?> <?php else : ?> 此处显示未找到文章时的信息,比如404相关 <?php endif; ?> 另一种常见的形式是将如上代码中的前两行组合起来(其他地方不变):
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
该形式通常会在模板的index.php、archive.php或者single.php等页面使用。除此之外的其他地方,我们通常不会看到此二函数的身影。