wordpress着色类别

wordpress coloring categories

我已将我的类别标签设置为彼此不同的颜色。设计是红色的,文案是蓝色的,灵感是绿色的。我已经设法通过 WordPress 的类别特定样式标签来做到这一点。但是如果使用了多个类别,则显示的颜色是 CSS 中最后出现的颜色。即,如果勾选设计和文案,则颜色会自动获得文案风格,因为它在 CSS 中排在最后。

如果勾选了多个类别,有没有一种方法可以完全显示不同的颜色,比如说灰色。

正如您在下面的代码中看到的那样,类别样式可以正常工作,但我需要以某种方式检测到不止一个类别并创建新样式。

我用来获取允许我设置样式的类别名称的标签;

(<?php post_class(); ?>)

如果勾选了两个类别,我会看到什么 - 勾选的两个类别 'category-design' 和 'category-inspiration';

<div id="post-98" class="post-98 post type-post status-publish format-standard has-post-thumbnail hentry category-design category-inspiration">

这是我对这三个类别的风格;

/*Design*/
.category-design {
    background-color: #f2334c; 
}

/*Copy Writing*/
.category-copy-writing {
    background-color: #446DB4; 
}

/*Inspiration*/
.category-inspiration {
    background-color: #0DB267; 
}

这是我在页面上使用的代码;

<div>
    <h5><?php the_category(', '); ?></h5>
</div>

您可以挂钩 post_class 过滤检查是否存在多个类别的函数,然后添加另一个来帮助您解决问题。像这样:

function multiple_categories_post_class($classes) {
    global $post;
    if (count(get_the_category($post->ID)) > 1) {
        $classes[] = 'multiple-categories';
    }
    return $classes;
}
add_filter('post_class', 'multiple_categories_post_class');

希望对您有所帮助!