根据帖子分类向网站添加类

时间:2020-03-14 作者:Ian S

我想为所有页面帖子和自定义帖子(即整个网站)的正文编写一个类

我使用的是一个前端编辑器,允许登录用户编辑帖子并将其放在后端之外。

我有一个自定义的帖子类型“紧急状态”,它包含一个分类为“状态”的帖子,它有极端、严重、非常高、高、中等的术语我想添加一个过滤器,用于检查该帖子的分类,然后将其添加到网站正文中。

2 个回复
SO网友:HK89

您可以使用WordPress中的body\\u类过滤器将自定义分类的分类术语作为CSS类添加到帖子中。CSS类出现在body元素中,仅当帖子已分配给分类法时才使用。

代码进入您的函数中。php文件。

add_filter( \'body_class\', \'themeprefix_add_taxonomy_class\' );
 // Add taxonomy terms name to body class
function themeprefix_add_taxonomy_class( $classes ){
    if( is_singular() ) {
        global $post;
        $taxonomy_terms = get_the_terms($post->ID, \'your_taxonomy\'); // change to your taxonomy
        if ( $taxonomy_terms ) {
            foreach ( $taxonomy_terms as $taxonomy_term ) {
            $classes[] = \'tax_\' . $taxonomy_term->slug;
            }
        }
    }
    return $classes;
}
将“your\\u taxonomy”更改为实际的分类法,body\\u class filter将收到自定义分类法上foreach循环的结果,如果post使用了该自定义分类法的任何术语,它们将被添加到$classes数组中,在上述实例中,它们的前缀为“tax\\u”,后跟术语-您可以更改此前缀以适应或根本没有前缀

SO网友:Tom J Nowell

如果主题构建正确,WordPress已经做到了这一点。特别是,如果使用body_class 如果使用post_class

例如,如果安装WordPress,默认的Hello World帖子是未分类的,并且具有以下类:

post-1 post type-post status-publish format-standard hentry category-uncategorized entry
请注意category-uncategorized

类似地<body> 标记具有以下类别:

post-template-default single single-post postid-1 single-format-standard wp-embed-responsive singular image-filters-enabled
根据上下文添加其他类,例如,如果显示管理工具栏或用户登录,则添加类等

相关推荐

Category y.php中的分页不起作用

Original Url: https://www.something.com/category/ftm-atf/在中添加分页时,将生成以下url,结果为404:Paginated Url: https://www.something.com/category/ftm-atf/page/2/代码位于category.php 如下所示:<?php $category = get_category( get_query_var( \'cat\' ) ); query_posts(arra