3

My WordPressブログには、内部作業に使用されるいくつかのカテゴリがあります。各投稿の下に表示されるブログホームページのカテゴリリストでそのカテゴリを非表示にします。

カテゴリリストを次のように印刷しますprint(the_category($postID));

そのカテゴリリストのフィルタを非表示にするか、各投稿の下に印刷する方法はありますか?

4

4 に答える 4

3

私の解決策:

.cat-item-1 {display:none;}
于 2013-11-05T15:51:31.710 に答える
2

選択したカテゴリをフロント エンドで非表示にする場合は、get_the_termsフィルタを使用してみてください。たぶんこのように、これをあなたのfunctions.php

add_filter('get_the_terms', 'hide_categories_terms', 10, 3);
function hide_categories_terms($terms, $post_id, $taxonomy){

    // list of category slug to exclude, 
    $exclude = array('your-term-slug', 'another-term-to-hide');

    if (!is_admin()) {
        foreach($terms as $key => $term){
            if($term->taxonomy == "category"){
                if(in_array($term->slug, $exclude)) unset($terms[$key]);
            }
        }
    }

    return $terms;
}
于 2015-06-18T04:52:17.473 に答える
1

投稿のカテゴリを取得し、不要なものを取り出して表示する必要があります。

<?php
$postCats = wp_get_post_categories($post->ID);
$cats =  array();

foreach($postCats as $c){
 $cats[]= get_cat_name($c);
}
$dontShow = array("List","the","Categories","here");
echo implode(", ", array_diff($cats,$dontShow);
?>
于 2012-06-28T14:44:06.007 に答える
1
$exclu_categories=array(
    1=>'',
    34 => '',
    45=>'',
);
$categoires=get_the_category();

foreach($categoires as $category) {

   $cat_id=$category->cat_ID;
   $cat_name=$category->name;

   if(!isset($exclu_categories[$cat_id])) {
      echo $cat_name;
   }

}
于 2013-11-05T16:04:36.320 に答える