子カテゴリーのラベル表示について

0
いいねをした人: 居ません
  • このトピックには4件の返信、2人の参加者があり、最後にRinにより1年、 11ヶ月前に更新されました。
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • 投稿者
    投稿
  • #115623
    Rin
    閲覧者
    1

    【お使いの Snow Monkey のバージョン】18.2.0
    【お使いの Snow Monkey Blocks のバージョン】17.2.0
    【お使いの Snow Monkey Editor のバージョン】9.1.0
    【お使いのブラウザ】Chrome

    ### 実現したいこと

    タグで投稿記事を絞り込んだ際に、記事のカテゴリーラベルを、親カテゴリーではなく、子カテゴリーに統一したい。(※複数のライターが記事を執筆するので、親と子の両方のカテゴリー登録があっても、子カテゴリーのみ表示させるよう統一したい)

    ### 発生している問題

    タグで投稿記事を絞り込んだ際に、記事のカテゴリーラベルが、親カテゴリーで表示される。

    ### 試したこと

    下記のコードにより、親カテゴリーで絞り込んだ際は、子カテゴリーのラベルが表示されるようになった。しかしタグで絞り込んだ際は親カテゴリーのラベルのままです。

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/loop/entry-summary/term/term',
    	function( $args ) {
    		// カテゴリーアーカイブあるいはタクソノミーアーカイブのとき
    		if ( is_category() || is_tax() ) {
    			// ページのクエリ情報を取得
    			$queried_object = get_queried_object();
    			// その投稿に割当てられているカテゴリー(タクソノミー)を全て取得
    			$terms = get_the_terms( get_the_ID(), $queried_object->taxonomy );
    			// 取得したカテゴリー(タクソノミー)のうち、最後のタームをカテゴリーラベルとして使用する
    			$args['vars']['_terms'] = [ end( $terms ) ];
    		}
    		return $args;
    	}
    );

    どうぞよろしくお願いいたします。

    0
    いいねをした人: 居ません
    #115629
    Rin
    閲覧者
    1

    できれば、執筆者別のアーカイブページの、カテゴリーラベルの表示も子カテゴリーに統一したいです。

     

    よろしくお願いいたします。

    0
    いいねをした人: 居ません
    #115645
    アバター画像キタジマ タカシ
    参加者
    2421

    $terms = get_the_terms( get_the_ID(), 'category' ); というふうに category 固定にしちゃったらどうですかね?

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/loop/entry-summary/term/term',
    	function( $args ) {
    		// カテゴリーアーカイブあるいはタクソノミーアーカイブのとき
    		if ( is_category() || is_tax() ) {
    			// その投稿に割当てられているカテゴリーを全て取得
    			$terms = get_the_terms( get_the_ID(), 'category' );
    			// 取得したカテゴリー(タクソノミー)のうち、最後のタームをカテゴリーラベルとして使用する
    			$args['vars']['_terms'] = [ end( $terms ) ];
    		}
    		return $args;
    	}
    );
    3
    いいねをした人:
    #115656
    Rin
    閲覧者
    1

    ご返信いただき、ありがとうございます。

    今までのタグを無効化し、上記のタグを入れてみましたが、変化がないです。

     

    ・親カテゴリーのアーカイブページ(ドメイン/category/カテゴリーID/)

    上記のページは、元々のコードを入れていた時と変わらず、ラベルは子カテゴリーで表示されます。

     

    ・タグで絞り込んだページ(ドメイン/tag/タグ名/)
    ・執筆者で絞り込んだページ(ドメイン/author/ユーザー名/)

    上記のに表示されるカテゴリーラベルは、依然として親のままです。

    0
    いいねをした人: 居ません
    #115667
    Rin
    閲覧者
    1

    下記のコードで解決しました。ありがとうございました。

    add_filter(
    'snow_monkey_get_template_part_args_template-parts/loop/entry-summary/term/term',
    function( $args ) {
    // カテゴリーアーカイブあるいは記事作成者ページあるいはタグ一覧ページのとき
    if ( is_category() || is_author() || is_tag()) {
    // その投稿に割当てられているカテゴリーを全て取得
    $terms = get_the_terms( get_the_ID(), 'category' );
    // 取得したカテゴリー(タクソノミー)のうち、最後のタームをカテゴリーラベルとして使用する
    $args['vars']['_terms'] = [ end( $terms ) ];
    }
    return $args;
    }
    );
    
    1
    いいねをした人:
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • トピック「子カテゴリーのラベル表示について」には新しい返信をつけることはできません。

ドキュメント

Snow Monkey の設定方法やマニュアルを掲載しています。

ドキュメント

フォーラム

Snow Monkey の使い方やカスタマイズについてのご質問・ご要望等はサポートフォーラムで行っています。サポートフォーラムは誰でも閲覧できますが、書き込みできるのは Snow Monkey 購入者のみとなります。

サポートフォーラム

よくあるご質問

Snow Monkey のサービスについて不明な点がある場合は、まずはよくあるご質問をご確認ください。

よくあるご質問

お問い合わせ

よくあるご質問を見ても解決しなかった場合、試用版の申請については問い合わせフォームからお願いいたします。

お問い合わせ

Snow Monkey は Gutenberg ブロックエディターに対応した 100%GPL の WordPress テーマです。拡張性を意識した開発をおこなっており、カスタマイザーとブロックでスピーディーにサイトを立ち上げるだけでなく、CSS やフックを駆使した高度なカスタマイズにも柔軟に対応できます。