WordPress 不同分类目录调用不同模板的方法

用WordPress做站特别是企业站的时候,多个分类的内容不同需要显示的页面也不一样,比如有些分类显示的是产品缩略图,有些显示的是公司新闻公告等,此时需要不同的分类模板,虽然wordpress默认只有一个通用的分类模板,但是可以通过函数代码实现不同的分类调用不同的模板。

实现WordPress不同分类调用不同模板的方法:

在当前WordPress主题的category.php文件中(没有就新建一个),添加以下判断代码:

1
2
3
4
5
6
7
8
9
10
11
12
<?php
	$post = $wp_query->post;
	if(in_category('1')) {
	include(TEMPLATEPATH.'/category-1.php');
	}
	else if (in_category('2')){
	include(TEMPLATEPATH.'/category-2.php');
	}
	else {
	include(TEMPLATEPATH.'/category-3.php');
	}
?>

该判断函数表示:判断分类ID是否为‘1’,如果是,则调用category-1.php模板,如果分类ID是2则调用category-2.php模板,如果以上两者都不是则调用category-2.php模板

提醒:也可以用类似方法实现不同文章调用不同页面,不同归档调用不同页面等

网友留言:

  1. 2012-09-08回复

    不知道这篇文章什么时候写的?wordpress默认就会调用category-ID.php文件,只有找不到的情况下才会调用category.php,不需要这样写判断的

    • 博主板凳
      2012-09-09回复

      去年写的。
      首先要感谢你的技术提醒,然后想说句话:当别人不知道摩托车存在的时候,自行车可能是最好的代步工具!

  2. 2012-08-13回复

    第七行有一个单引号标错位置了,应该是:include(TEMPLATEPATH.’/category-2.php’);

    • 博主板凳
      2012-08-13回复

      感谢提醒,已改正!

  3. 2011-11-05回复

    我想要调用不同的模板及样式表,样式表怎么调用不同的了

    • 博主板凳
      2011-11-05回复

      @****, 最简单的方法就是给你不同的模板修改不同的样式表不就得。

  4. 2011-10-20回复

    很想学习wordpress,可惜太菜 一切都不懂,就像这个根本不知道什么意思

发表留言