如何在Wordpress CSS样式表中减少类

如何在Wordpress CSS样式表中减少类,css,wordpress,less,Css,Wordpress,Less,我想知道如何在wordpress CSS中分组或减少类,例如,我有更多的页面要添加以下样式,而且复制和粘贴类的结尾部分非常耗时: .page-id-16592 .header_bottom, .page-id-16663 .header_bottom, .page-id-16664 .header_bottom, .page-id-16665 .header_bottom, .page-id-16666 .header_bottom, .page-id-16601 .header_bot

我想知道如何在wordpress CSS中分组或减少类,例如,我有更多的页面要添加以下样式,而且复制和粘贴类的结尾部分非常耗时:

.page-id-16592 .header_bottom, 
.page-id-16663 .header_bottom, 
.page-id-16664 .header_bottom, 
.page-id-16665 .header_bottom, 
.page-id-16666 .header_bottom,
.page-id-16601 .header_bottom,
.postid-16728 .header_bottom,
.postid-16722 .header_bottom,
.postid-16725 .header_bottom,
.postid-16727 .header_bottom {
    background-color: #222 !important;
}
我尝试过做以下事情,但运气不佳:

.page-id-16592, .page-id-16663, 
.page-id-16664, .page-id-16665, 
.page-id-16666, .page-id-16601, 
.postid-16728, .postid-16722, 
.postid-16725, .postid-16727 {
    .header_bottom {
        background-color: #222 !important;
    }
}
这使我能够有效地添加页面ID


感谢您的输入。

您不能在所有您想要设置样式的帖子/页面上应用一个类吗

一些普通的东西,比如main

或者,如果您不介意在所有.header\u bottom中应用此样式,则只需

.header_bottom {
    background-color: #222 !important;
}

将以下代码或类似代码添加到functions.php文件中。当post ID位于$ids数组中时,这将为页面的标记添加一个类

或者,您可以将其修改为具有特定自定义元属性或类别等的目标帖子/页面

add_filter('body_class', function (array $classes) {
    // Prepare your target ids
    $ids = [16592, 16663, 16664, 16665, 16666, 16601, 16728, 16722, 16725, 16727];

    if (in_array(get_the_ID(), $ids)) {
        $classes[] = 'my-custom-class';
    }

    return $classes;
});
然后,在CSS中,您可以使用以下方法针对这些特定页面:

.my-custom-class .header_bottom {
    // ...
}

假设这些页面之间有一些共同点,你可以专门针对它们——你可以使用PHP在这些页面的body标签中添加一个类,然后只针对一个类。我找不到这些页面之间的任何共同点,它们只是普通页面,我想展示给不同的听众群体。然后你只需要跟踪他们的ID,或者向每个页面添加一些元数据,并使用这些元数据来识别他们。我只想应用于某些页面,因此我无法将其应用于泛型类。这看起来是一个很棒的解决方案。它是否适用于.page id xxx以及.postid xxx?get__id将获得当前的帖子/页面id。因此,如果id在数组中,它将起作用。嗯,似乎不起作用。当我在functions.php中添加代码时,页面id类消失。fail。我忘了还$classes了。请参阅我的编辑。
.my-custom-class .header_bottom {
    // ...
}