タクソノミーアーカイブのURLを変更したい
WordPress
WordPressのタクソノミーのURLについて特に指定がない場合、どうしていますか?
例えば製品のカスタム投稿と、製品の種別のタクソノミーを作ったとします。
投稿タイプ | 製品 |
カスタムタクソノミー | 製品種別 |
カスタム投稿 | /product/ |
製品種別のターム | 男性用、女性用、子供用 |
タクソノミーアーカイブ | /tax_product/mens/、/tax_product/woman/、/tax_product/kids/ |
このとき記事は/product/ページ名なので
タクソノミーのアーカイブも/product/mens/、/product/woman/のように同じ階層にあるように見せたいときありますよね。変更方法を説明します。
プラグインを使用する場合
Custom Post Type UIを使用します。
カスタム投稿と、カスタムタクソノミーを登録します。
カスタムタクソノミーの設定ブロックの「カスタムリライトスラッグ」にカスタム投稿のスラッグを入れて保存します。
このあと、設定>パーマリンクで何も編集せず「変更を保存」を押します。(これを行わないと、反映されません。)
これでURLが変更されます。
プラグインを使用しない場合(functions.phpに追加する)
プラグインを使用しない場合は、register_post_typeでカスタム投稿を登録、register_taxonomyでカスタムタクソノミーを設定します。
register_taxonomyのパラメータに下記を追加
'rewrite' => array('slug'=>'product'),
productの部分はカスタム投稿のスラッグを入れます。
ファイルを保存、サーバーにアップロードし、WordPressの管理画面から設定>パーマリンクで何も編集せず「変更を保存」を押します。(これを行わないと、反映されません。)
これでURLが変更されます。
まとめ
URL指定がある場合は上の2つのやり方で対応してみてください。