WordPress 的页面类型判断
为了让我们的博客缤纷多彩,为了让模板在不同的时候显示不同的东西,我们通常会用到 WordPress 内置的一些个判断函数,这些函数大都以 “is_”开始,意思很容易看懂,只要稍懂点英文的朋友都可以不看解释直接用到你的主题代码里,我们要感谢 WordPress 的创作者,有了这些函数的支持,我们可以把博客折腾的更精彩。
函数介绍
is_home() 判断是否为首页,并且显示的不是一个静态页面 is_front_page()判断是否为首页,包括首页显示的是一个静态页面 is_search()是否为搜索页 is_404()是否为404页面 is_category()是否为分类目录归档 is_author()是否为作者归档页面 is_day()是否为按天归档页面 is_month()是否为按月归档页面 is_year()是否为按年归档页面 is_tag()是否为标签归档页面 is_single()是否为文章页面 is_page()是否为页面单页 is_date()是否按日期归档页面,相当于包括is_day()、is_month()、is_year() is_archive()是否为归档页面,相当于包括is_category()、is_author()、is_month()、is_day()、is_year()、is_tag() is_singular()相当于is_single()||is_page()||is_attachment() is_sticky() 置顶文章判断。 2012.6.25 补充 is_singular 用于判断单页。(谢谢 @郑永 对函数拼写的指正)
简单使用的介绍 – 1
比如说我 sidebar 里的文章标签,只会在我想要的页面才显示,那我们需要怎么才能做到呢?很简单,加一个判断:
<?php //判断开始 if(is_front_page() || is_home() || is_page() || is_category()) { //如果是首页、页面、文章目录才会显示 ?> <div id="tag_cloud" class="widget"> <h3>文章标签</h3> <?php wp_tag_cloud('smallest=8&largest=14&number=12&order=RAND'); ?> <div class="action"> <a class="view-more" href="<?php bloginfo(url);?>/all-tags/">View All Tags ??</a> </div> </div> <?php };//判断结束位置 ?>
简单使用的介绍 – 2
还有我们的文章标题,在索引的时候我们想要显示成超链接,而在具体的文章里,我们想把标题显示为纯文本,我们的代码可以这么写:
<?php //判断开始 if ( is_single () || is_page()) : //如果是文章单页 ?> <h1><?php the_title();//只显示标题,有木有?></h1> <?php else ://其他情况 ?> <h2><a class="title" href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2> <?php endif ?> //判断结束位置 ?>
总结
其实这些判断函数,
不仅可以让我们在特定页面隐藏一些东西,
也可以让我们在不同页面替换显示一些东西,
或者加载一些东西,
更有许多其他的实用的衍生功能,在这里就不在赘述了。
留待以后大家折腾的时候慢慢发现。