基于类别的风格

时间:2016-01-07 11:53:42

标签: css wordpress

根据帖子标记的类别,我似乎无法让悬停更改颜色。

我已将body_class()和post_class()添加到header.php,并添加了一个将当前帖子的类别添加回body类的函数 -

add_filter('body_class','add_category_to_single');
function add_category_to_single($classes) {
    if (is_single() ) {
       global $post;
         foreach((get_the_category($post->ID)) as $category) {
              $classes[] = 'category-'.$category->slug;
         }
     }
return $classes;
  }

我可以使用此样式更改所有帖子上的悬停 -

.portfolio .portfolio-item:hover > .hover-item{
     background-color:#000000;
 }

但是当我添加类别类时没有任何反应。例如 -

catergory-classes .portfolio-item:hover > .hover-item{
    background-color:#000000;
}

我哪里错了?

这是我的site.感谢任何帮助

3 个答案:

答案 0 :(得分:0)

我认为你可以在第一个css代码中加入一点 你的CSS是

group = "someName"

但是正确的是

catergory-classes .portfolio-item:hover > .hover-item{
    background-color:#000000;
}

答案 1 :(得分:0)

我认为你错过了一个点(。)

<xsl:template match="doc">
    <doc>
        <xsl:for-each select="aa">
            <xsl:sort select="@type"/>
            <xsl:apply-templates select="."/>
        </xsl:for-each>
    </doc>
</xsl:template>

如果.catergory-classes .portfolio-item:hover > .hover-item{ background-color:#000000;} .catergory-classes需要应用于同一个标签,那么它应该是(没有空格b / w 2类)

.portfolio-item

答案 2 :(得分:0)

你不应该设置一个身体类,因为这将是头版本身的类别(并且不会对每个项目进行更改)。相反,请考虑向项目组合项添加类(在循环中)。例如:

<?php 
    if ( have_posts() ) : while ( have_posts() ) : the_post(); 
        $categories = get_the_category();
        $category = ! empty( $categories ) ? 'category-' . $categories[0]->name : '';
?>
    <li class="portfolio-content">
        <div class="portfolio-item <?php echo $category; ?>">
            <!-- Additional Content -->
        </div>
    </li>

然后,您可以使用以下方式定位这些类别:

.portfolio-item.category-somecategory:hover > .hover-item { }