サポート » 使い方全般 » カスタム投稿タイプのタクソノミーについて

  • 解決済 nagaib

    (@nagaib)


    標準で用意されている投稿記事でカテゴリー(タクソノミー名category)を作成しているので、カスタム投稿タイプで共有して使いたいと思っています。

    下記のように書いたのですが、メニューにcategoryが追加されません。

    どなたかお力をかして頂けると幸いです。
    どうぞ宜しくお願いします。

    register_post_type(
    ‘events’,
    array(
    ‘label’ => ‘スポーツ’,
    ‘hierarchical’ => true,
    ‘public’ => true,
    ‘query_var’ => false,
    ‘rewrite’ => true,
    ‘menu_position’ => 5,
    ‘taxonomies’ => array(‘category’,),
    ‘supports’ => array(
    ‘title’,
    )
    )
    );

    register_taxonomy(
    ‘eventcat’,
    ‘events’,
    array(
    ‘label’ => ‘種類’,
    ‘hierarchical’ => true,
    )
    );

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • モデレーター jim912

    (@jim912)

    nagaibさん、こんにちは。

    どのディレクトリのどのファイルに記述しましたか?

    トピック投稿者 nagaib

    (@nagaib)

    使用中のテーマのfunctions.php(index.phpと同じ階層)にコード追加しています。

    前はプラグイン(Custom Post Type UI)を使っていて、その時は投稿記事で作成したカテゴリー(タクソノミー名category)がそれそれのカスタム投稿タイプのメニューに入っていたのですが、Custom Post Type UIではパーマリンク設定がうまくいかなかったので、プラグインを使わずに行うことにしました。

    他にも何か必要なことがあるのでしょうか。
    よろしくお願いいたします。

    モデレーター jim912

    (@jim912)

    nagaibさん

    カテゴリーも1つのタクソノミーとして登録されるようになっています。
    このカテゴリーの登録は、プラグインが読み込まれる前とinitフックで再度上書きする形で再登録がなされています。

    テーマのfunctions.phpはinitフックより前に行われるため、この中でregister_post_typeを実行し、カテゴリーとの紐付けを行っても、initフックでのカテゴリー再登録で、投稿のみの紐付けとして上書されてしまうのです。

    ですので、initフックにてregister_post_typeが実行されるようにすれば、eventsでもカテゴリーを使えるようになります。

    function register_custom_post_types() {
    	register_post_type(
    		'events',
    		array(
    			'label' => 'スポーツ',
    			'hierarchical' => true,
    			'public' => true,
    			'query_var' => false,
    			'rewrite' => true,
    			'menu_position' => 5,
    			'taxonomies' => array('category',),
    			'supports' => array(
    				'title',
    			)
    		)
    	);
    }
    add_action( 'init', 'register_custom_post_types' );
    トピック投稿者 nagaib

    (@nagaib)

    jim912さん

    ご回答ありがとうございます。

    無事思い通りにカスタム投稿タイプでカテゴリーを使えるように出来ました。
    紐付けができていなかったのですね。自分では解決の糸口が全く見つからず、長い間悩んでいたので感動しました。
    これで前に進めそうで、とても嬉しいです。

    本当に感謝いたします。ありがとうございました。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「カスタム投稿タイプのタクソノミーについて」には新たに返信することはできません。