如果所有帖子都有这个类别ID,该怎么办?

时间:2018-08-09 作者:Elle

我需要一个wordpress功能来搜索我网站内的所有帖子,如果一篇或多篇帖子有类别ID(示例25)echo "yes", else echo "no"

我想做的是:

if ( has_category(25) ) {
   echo "OK";
} else {
    echo "NO OK";
}
但不起作用

编辑:我的目标是只在类别为“25”时显示评论部分,其他帖子不显示评论部分

2 个回复
SO网友:Iceable

您可以使用get_category( $id ), 它返回的对象包含此类别中包含的帖子数。

以您的示例为基础,这将是:

$my_category = get_category( \'25\' );

if ( 1 <= $my_category->category_count ) {
   echo "OK";
} else {
    echo "NO OK";
}

SO网友:Elle

也许我找到了一个解决方案:这可以是:

add_action( \'wp_enqueue_scripts\', \'remove_comments_specific_categories\' );

function remove_comments_specific_categories() {
    if ( !in_category( \'1126\' ) && !in_category( \'1124\' ) && !in_category( \'35\' ) && !in_category( \'1050\' ) && !in_category( \'33\' ) && !in_category( \'1077\' ) && !in_category( \'39\' ) && !in_category( \'32\' ) && !in_category( \'32\' ) && !in_category( \'27\' ) && !in_category( \'38\' )) {
        ?>
        <style type="text/css">
            #comments {
                display: none;
            }
        </style>
        <?php
    }
}

结束