タクソノミーアーカイブの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つのやり方で対応してみてください。

関連記事