为 WordPress 不同分类设置不同模板
  • 分类:Wordpress
  • 发表:2013-03-17
  • 围观(7,581)
  • 评论(2)

最近没事瞎折腾一主题,因为应用的关系,准备为不同分类设置不同模板。其实也简单,主要涉及到两个函数in_category和is_category.

最初的目的是想为分类页面设置不同的模板,找了网上几篇文章看了下,给出的代码都是in_category,试了下出错了,自己试验了下发现如果是设置分类模板,那应该是使用is_category函数。而in_category则主要是判断文章是否属于该分类然后来定义模板。下面记录两段代码,以备日后查用:

一:为不同分类设置不同分类模板,修改category.php文件,在里面写入以下代码:

post;
if( is_category(array('3','4'))) {
include( TEMPLATEPATH.'/category-1.php'); }
else if ( is_category(array('6','7'))){
include( TEMPLATEPATH.'/category-2.php'); }
else { include( TEMPLATEPATH.'/category-3.php'); } ?>

说明:判断分类ID是否为3或4,如果是,则调用category-1.php模板,如果分类ID是6或7则调用category-2.php模板,如果以上两者都不是则调用category-3.php模板。

二:为不同分类下的文章设置不同分类模板,修改single.php文件,在里面写入以下代码:

post;
if( in_category(array('3','4'))) {
include( TEMPLATEPATH.'/single-1.php'); }
else if ( in_category(array('6','7'))){
include( TEMPLATEPATH.'/single-2.php'); }
else { include( TEMPLATEPATH.'/single-3.php'); } ?>

说明:判断文章是否属于分类ID3或4,如果是,则调用single-1.php模板,如果文章属于分类ID是6或7则调用single-2.php模板,如果以上两者都不是则调用single-3.php模板。

 

Top