按WordPress分类ID为页面添加相应的class
这段代码通过判断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;
- }
一举反三,可以定义其它任意位置的文字大小,背景颜色等与其它分类不同。
原代码出处:http://www.trickspanda.com/2014/04/add-category-id-body-post-class-wordpress/