サポート » 使い方全般 » カスタム投稿で作成した記事がカテゴリー、タグのアーカイブに表示されない

  • 解決済 yu-miya

    (@yu-miya)


    CPT UIを使用しカスタム投稿を作成しました。
    タクソノミーの設定で、カスタム投稿にも、通常投稿と共通のカテゴリー、タグが使用出来るようになり、表示はされるのています。
    しかしそのリンクから、カテゴリー、タグのアーカイブページに飛ぶと、カスタム投稿で作成された記事は一覧の中に含まれていません。
    ビルトイン分類というものを設定するという内容の、かなり古い記事を見つけましたが、プラグインにそのような設定項目は見当たりません。
    どのような設定が必要なのでしょうか。

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • CG

    (@du-bist-der-lenz)

    カスタム投稿タイプの、それぞれのカテゴリー、タグのアーカイブページでなくて、ということですね。

    トピック投稿者 yu-miya

    (@yu-miya)

    反応ありがとうございます。
    はい。通常投稿のカテゴリー、タグのアーカイブの中に、カスタム投稿も混ざって表示されるようにしたいです。

    下記のWebページの後半に
    「カスタム投稿タイプのカテゴリー、タグを既存の「投稿」と共有させる」
    という記事があるので参考になるかなと思います。
    最後の方に出てくる pre_get_posts アクションフックを利用するコードです。

    カスタム投稿タイプの作成とカテゴリを独立、共有させる手順まとめ
    http://asodigi.com/post-types/

    トピック投稿者 yu-miya

    (@yu-miya)

    ありがとうございます。
    必要と思われる箇所を追記しましたが、変化無しです。

    投稿画面のカテゴリー選択では通常投稿と同じカテゴリー、タグが選択可能なので、一応の共有は出来ていると思われます。
    実際にカスタム投稿で作成した記事には選択したタグ、カテゴリーが表示されるのですが、リンク先は「見つかりません」との表示。
    以前にカスタム投稿を使用した際は、このような事は起こりませんでした。原因が分からず、参りましたね。

    トピック投稿者 yu-miya

    (@yu-miya)

    どうもrewriteが関係しているような気がしてきました。

    yu-miyaさん
    こんな使い方してますが、ご参考になりますか?
    リライトは、特殊な場合を除いて、未入力でよろしいと思います。

    
            //functions.phpに記述
    	if(is_category() ||is_tag() ):
    	  $query->set( 'post_type', array('post','カスタムポスト') );//投稿タイプ
    	endif;
    
    トピック投稿者 yu-miya

    (@yu-miya)

    ありがとうございます。rewriteは関係なかったですね。
    最終的にこんな感じでした。
    add_action( ‘pre_get_posts’, ‘add_post_tag_archive’ , 10 , 1);
    function add_post_tag_archive( $wp_query ) {
    if ($wp_query->is_main_query() && $wp_query->is_tag()) {
    $wp_query->set( ‘post_type’, array( ‘post’, ‘page’, ‘カスタム’ ));
    }
    }
    カテゴリーはまた別でかなりゴチャゴチャです。

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック「カスタム投稿で作成した記事がカテゴリー、タグのアーカイブに表示されない」には新たに返信することはできません。