今、Raindropsというテーマに実装中の機能を、Twentyfifteen用にアレンジしてみました。
デフォルトパーマリンクだと動作しません。
以下は、動作確認用のテストコードですので、実装する場合には、コードを再検討してください。
functions.php
add_action( 'wp_head','my_hide_default_category', 99 ); function my_hide_default_category( ) { $permalink_structure= get_option( 'permalink_structure' ); $css_rule_set = '<style type="text/css"> .entry-footer .cat-links a[href$="%1$s/"], .entry-footer .cat-links a[href$="%1$s"]{ display:none; } </style>'; if ( ! empty( $permalink_structure ) ) { $default_category_id = get_option( 'default_category' ); $default_category_info = get_category( $default_category_id ); $default_category_slug = $default_category_info->slug; printf( $css_rule_set, $default_category_slug ); } }
追記、カテゴリーを表示したときに、投稿の同じカテゴリーも非表示にする例
フィルターなどで、スタイルを追加する必要があります。ご参考まで
if ( ! function_exists( 'emulsion_hide_redundant_category' ) ) {
function emulsion_hide_redundant_category() {
$permalink_structure= get_option( 'permalink_structure' );
$css_rule_set= '.taxsonomy [rel="tag"][href$="%1$s/"],
.taxsonomy [rel="tag"][href$="%1$s"]{
display:none;
}';
if ( is_category() ) {
$category = single_term_title( "", false );
$catid = get_cat_ID( $category );
$category_link = get_category_link( $catid );
return sprintf( $css_rule_set, $category_link );
}
if ( ! empty( $permalink_structure ) ) {
$default_category_id = get_option( 'default_category' );
$default_category_info = get_category( $default_category_id );
$default_category_slug = $default_category_info->slug;
return sprintf( $css_rule_set, $default_category_slug );
}
}
}