WordPress主题制作不同分类的调用
仿站知识 2016-03-21 1512 0 评论 admin

在企业主题制作中因为有新闻列表和产品列表的区别,所以要用到不同的分类用不同的样式展示,WordPress默认的列表展示文件是archive.php,但是只有一个文件又怎么能以不同的效果展示呢?下面我就给大家分享一个如何能让WordPress主题不同的分类展示不同的列表。

一:这种方法最简单,也是WordPress自带的一种显示方法

1、根据分类的别名来控制列表显示效果,先到WordPress后台查看一下需要显示的分类别名,例如:news,那么就新建一个分类目录文件,category-news.php,然后在这个文件里编辑你要显示的格式就可以了,同样的道理,可以根据不同的别名建不同的分类展示方式。

2、根据ID作为文件名来控制列表显示效果,这种方法和第一种同理,例如需要显示的分类目录ID是3,则新建分类目录文件为category-3.php,然后在这个文件里编辑你想要的效果就行。

二:利用函数文件来实现分类的不同调用,这种方法虽然有点复杂,但这种方法比较容易管理,操作简单。

1、首先在functions.php函数文件中添加以下代码。

1
2
3
4
5
6
7
8
9
10
11
12
<?php
function post_is_in_descendant_category( $cats, $_post = null )
{
foreach ( (array) $cats as $cat ) {
// get_term_children() accepts integer ID only
$descendants = get_term_children( (int) $cat, 'category');
if ( $descendants && in_category( $descendants, $_post ) )
return true;
}
return false;
}
?>

2、然后新建一个category.php文件,添加以下代码。

1
2
3
4
5
6
7
8
9
10
<?php
    if ( in_category('1') || post_is_in_descendant_category( 1) ){
        include(TEMPLATEPATH .'/category-chanpin.php');
    }
    elseif( in_category('2') || post_is_in_descendant_category( 2 ) ){
        include(TEMPLATEPATH . '/category-news.php');
    }else{
        include(TEMPLATEPATH . '/category-other.php');
    }
?>

其中,in_category(‘1′)里面的1是指分类1的ID包括该分类下的所有分类。意思是ID为1及以下所有的分类用category-chanpin.php这个分类的显示方式来显示,分类2及以下的所有分类以category-news.php的方式来显示,其它分类以category-other.php的方式来显示。这样就可以实现指定ID用不同的效果来显示了。

继续浏览有关: , 的文章
版权声明:版权归 wp仿站之家 所有,转载请注明出处!
转载请保留链接: http://www.linw.net/655.html
联系wp仿站之家:5946394#qq.com (#改为@)
wp仿站微信公众号:linw_net
官网淘宝店:http://shop111710277.taobao.com/
wp仿站之家
手机扫一扫
进淘宝店铺选购主题

用心做最好的主题网站wp仿站之家

wp仿站之家是一个专业的wordpress仿站业务网站,提供wordpress主题模板下载以及seo网站优化服务,诚信经营,用心服务每一个客户,让您放心享受我们的优质服务。同时,也欢迎各位建站爱好者加入我们交流建站经验心得。

上一篇: 下一篇:

发表评论

服务咨询