質問: ### 前提・実現したいこと wordpressを使って、カスタム投稿を作っています。 そのカスタム投稿のカスタムタクソノミーを複数設定し、 それぞれ一覧ページや、詳細ページなど反映させたいのですがうまくいきません。 ### 発生している問題 カスタム投稿タイプ名 works カスタムタクソノミー works_category カスタムタクソノミー works_tag これらのURLを ・works_category /works/カスタムタクソノミースラッグ/ ・works_tag /works/カスタムタクソノミースラッグ/ と両方ともこのように設定したいのですが、 うまくいきません。 片方の表示はできるのですが、 両方の表示がどうしてもうまくいきません。 ご存知の方がいらっしゃいましたら、 ご教授をお願いいたします。 ### 該当のソースコード ``` register_post_type('works', array( 'label' => '仕事', 'description' => '', 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'capability_type' => 'post', 'hierarchical' => false, 'rewrite' => array('slug' => 'works','with_front' => false), 'query_var' => false, 'has_archive' => true, 'exclude_from_search' => false, 'menu_position' => 6, 'supports' => array( 'title', 'revisions', 'thumbnail', 'page-attributes' ), 'taxonomies' => array('works_category'), 'labels' => array ( 'name' => '仕事', 'all_items' => '仕事' ) ) ); //カスタム分類(カテゴリー) register_taxonomy('works_category', 'works', array( 'hierarchical' => true, 'public' => true, 'label' => '開発事例カテゴリー', 'show_ui' => true, 'query_var' => true, 'rewrite' => array('slug' => 'works' , 'with_front' => true,), 'rewrite_hierarchical' => false, 'singular_label' => '開発事例カテゴリー' ) ); //カスタム分類(タグ) register_taxonomy('works_tag', 'works', array( 'hierarchical' => false, 'public' => true, 'label' => '開発事例タグ', 'show_ui' => true, 'rewrite' => array( 'slug' => 'works', 'with_front' => true, 'hierarchical' => false, ), ) ); } add_action( 'init', 'add_taxonomies', 0 ); ``` ### 試したこと 'rewrite' => array('slug' => 'works' , 'with_front' => true,), 'rewrite' => array( 'slug' => 'works', 'with_front' => true, 'hierarchical' => false, ), リライトはたくさん書き直して見ました。
回答: たぶんそのようなdynamicな処理が必要になるroutingは向いてないと思います。 妥協案としては、 1. /works_category/slugと/works_tag/slug/と別々にする 2. /works/それぞれのslugをリダイレクト登録して、/works/カスタムタクソノミースラッグ/のアーカイブページへ移動する かでしょうか。