当前位置: 首页 > 知识库问答 >
问题:

如何为wordpress中某个类别的所有帖子添加特定的类

陈嘉荣
2023-03-14

安装了一个主题,我使用了该主题的模板。模板不是我创建的。我没有模板代码的访问权限。我使用构建器来构建元素。我从一个类别中创建了一个帖子网格,但是生成器不会为该类别中的所有帖子添加特定的类。所以,我想添加一个钩子,一个类的所有帖子从网站从一个特定的类别(仅为他们)。如何做到这一点?

共有2个答案

郝杰
2023-03-14

functions.php

function filter_post_class( $classes, $class, $post_id ) {
    $cat_slug = get_category_by_slug('your-category-slug'); // change your category slug here
    $cat_slug = isset($cat_slug->slug)?$cat_slug->slug:null;

    $cat_curr = get_the_category($post_id);
    $cat_curr = isset($cat_curr[0]->slug)?$cat_curr[0]->slug:null;

    if($cat_slug == $cat_curr){
        $classes[] = 'your-class-name'; // change your post class here
    }
    return $classes; 
}; 
add_filter( 'post_class', 'filter_post_class', 10, 3 );  
东郭思远
2023-03-14

您可以添加这样的自定义类:

<?php 
$custom_classes = array(
        'longform-article',
        'featured-story',
        'interactive',
    );
?>
<article id="post-<?php the_ID(); ?>" <?php post_class( $custom_classes ); ?>>

因此,如果您想要获得类别:

<?php 
$category = get_the_category();
?>
<article id="post-<?php the_ID(); ?>" <?php post_class( array($category) ); ?>>
 类似资料:
  • 我在WordPress中创建了一个自定义帖子类型,我如何在这个中添加自定义摘录添加一个字段。自定义帖子类型保存在同一个wp_posts表中。添加选项显示所有字段。但是现在我想在这个中添加自定义摘录字段。我有任何WordPress功能添加摘录。任何人都可以帮助!

  • 我创建了一个名为制造商的自定义帖子类型,并添加了大量帖子和类别。单个帖子页面工作,但类别/存档页面不显示任何帖子。 制造商被分成不同的类别,我需要显示每个类别中所有帖子的存档。我去工厂的时候 http://localhost/category/manufactures/ge-speedtronic/ 这就是令人困惑的地方。我为自定义帖子类型“制造商”使用的类别也显示在我的其他自定义帖子类型和默认帖

  • 我有两个不同类别的自定义帖子类型(公文包),然后我有两个页面显示两个类别的帖子。 我调用页面时的url类似于mysite.com/pagename,其中pagename与公文包类别同名。 我的问题是,当我进入单一公文包时,url会变成mysite.com/portfolio/portfolio-name 有没有办法在url中显示投资组合类别?应该像mysite.com/portfolio-cate

  • 我有一个关于wordpress的Elementor页面生成器的问题。 我们有特定自定义帖子类型的分类归档页面。这些类别使用Elementor模板(可在模板的侧菜单中找到)- 因此,每个类别归档页面都是完全动态的。它以动态方式显示属于该类别的帖子列表。 但是如果我想为这个特定类别添加文本呢?我在哪里/怎么做? 在“编辑类别”页面中,您不能添加会影响设计内容的更改,并且那里没有可用的元素生成器。 因此

  • 我有一个正在构建的搜索结果页面,它将帖子分为三个类别(产品、食谱、文章),在页面的下面三个单独的部分。类别(菜谱和文章)很好,也很简单——创建一个查询以在两个单独的循环中使用,但是我在自定义帖子类型方面遇到了问题。 如果可能的话,我想在循环中引入这些,但不确定是在post类型上还是在分类法上这样做。很明显,这些产品在分类法下被划分为子类别,所以当我尝试它时,它多次拉同一个产品。 现在,我已经放弃了

  • 我有一种特殊的鼻涕虫。php页面。 我想显示第一类“横幅广告”,每页只有一篇文章,然后在下面,显示“特色”类别的每页3篇文章 我不想使用:**query_posts('posts_per_page=4')** 我尝试过pre_get_posts功能,但似乎无法让它工作。 现在每页显示的帖子数量是我在设置中指定的数量- 以下是我当前的代码: