wordpress二次开发:按分类ID为页面添加相应的class的方法

2015-10-07 21:57 阅读 19 次 评论关闭

这段代码通过判断WordPress分类ID,自动在分类页面和文章页面的<body> 标签中添加“cat-6-id”例如:

<body class="archive category category-wordpress category-6 logged-in custom-background cat-6-id">

其中数字为该分类的ID号,前提是主题模板必须使用函数:

<body <?php body_class(); ?>>

有了这个非常方便的功能,你就可以针对不同的分类定义不同的样式风格。

将以下代码添加到您当前主题的 functions.php 文件:
function category_id_class($classes) {
global $post;
foreach((get_the_category($post->ID)) as $category)
$classes [] = 'cat-' . $category->cat_ID . '-id';
return $classes;
}
add_filter('post_class', 'category_id_class');
add_filter('body_class', 'category_id_class');

应用实例:

比如:HotNewspro主题,在分类ID为6的分类归档和文章页面隐藏热点文章(顶部的四张图片),可在主题样式文件style中添加:

.cat-6-id, #top_hot {
    display: none;
    }

举一反三,可以定义其它任意位置的文字大小,背景颜色等与其它分类不同。      

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:wordpress二次开发:按分类ID为页面添加相应的class的方法 | 猎微网

评论已关闭!