カスタム投稿タイプのパーマリンクを変更する『Custom Post Type Permalinks』
カスタム投稿タイプのパーマリンクを変更できるプラグイン『Custom Post Type Permalinks』を紹介します。カスタム投稿タイプの日付アーカイブリストの表示やタクソノミーページのURLをいい感じにしてくれます。
まえがき
インストールするだけでカスタム投稿タイプのパーマリンクを個別に変更できる『Custom Post Type Permalinks』というプラグインを発見しました。
『Custom Post Type Permalinks』はカスタム投稿タイプのパーマリンクを個別に変更できるだけでなく他にもいいことがあります。
いきなりですがカスタムタクソノミーのアーカイブページのURLに違和感を感じたことはありますか?
というのもカスタム投稿タイプの分類にカスタムタクソノミーを設定している場合
WordPressデフォルトの設定だとカスタムタクソノミーのアーカイブページのURLがこのようになります。
http://hogehoge.com/タクソノミー名/ターム名
カスタム投稿タイプのタクソノミーなのにドメイン以下がタクソノミー名から始まるのおかしいですよね。
KoToRiの希望はこうです!!
http://hogehoge.com/投稿タイプ名/タクソノミー名/ターム名
これなら自然ですよね!
どうにかカスタムタクソノミーのアーカイブページのURLを変更できないかと色々探していたら、『Custom Post Type Permalinks』という素晴らしいプラグインを発見しました。
このプラグインをインストールして有効化すると
- カスタム投稿タイプのパーマリンクを個別にカスタマイズできる
- カスタム投稿タイプの日付アーカイブのURLが
「http://hogehoge.com/投稿タイプ名/date/2011/11/02」のような形になる - 「wp_get_archives()」でカスタム投稿タイプの月別アーカイブリストが表示できる
- カスタムタクソノミーのアーカイブページのURLが
「http://hogehoge.com/投稿タイプ名/タクソノミー名/ターム名」のような形になる
素晴らしい。素晴らしすぎます。
タクソノミーページのURLをKoToRiの希望通りに叶えてくれました。
ということでこの『Custom Post Type Permalinks』プラグインの使い方を紹介します。
因みにカスタム投稿タイプを利用するのであれば、パーマリンク設定はデフォルト以外に指定しましょう
デフォルトだとカスタム投稿タイプのアーカイブページが表示できません。
『Custom Post Type Permalinks』のインストール
管理画面「プラグイン」→「新規追加」の検索フォームに「Custom Post Type Permalinks」と入力し「プラグインの検索」をクリックしてインストールするか下記からファイルをダウンロードしてインストールしてください。
インストールしたら有効化してください。
カスタム投稿タイプのパーマリンクの設定
有効化すると「設定」→「パーマリンク設定」を開きます。
パーマリンク設定画面に「カスタム投稿タイプのパーマリンクの設定」という項目が追加されます。
ここからカスタム投稿タイプのパーマリンクを設定できます。
「カスタム分類のアーカイブのパーマリンクを変更する。」にチェックを入れるとタクソノミーのアーカイブページのURLが
http://hogehoge.com/投稿タイプ名/タクソノミー名/ターム名
というスマートな形に変更されます。
因みにカスタム投稿タイプが複数あってもパーマリンクは個別で設定できます!
使い方も簡単で本当に素晴らしいですね!
カスタム投稿タイプの月別アーカイブリストを表示する
さらに「Custom Post Type Permalinks」をインストールすると「wp_get_archives()」のパラメーターに「post_type」が追加されます。
これによりカスタム投稿タイプの月別アーカイブリストを表示することが可能です。
例えば投稿タイプ名が「kotoridiary」の月別アーカイブリストを表示する場合の出力タグはこのようになります。
<?php wp_get_archives('type=monthly&post_type=kotoridiary'); ?>
まとめ
いや~素晴らしいプラグインですね。
設定が簡単なのが最高です。
カスタム投稿タイプとカスタムタクソノミーを利用して独立したコンテンツを作成するのであれば「Custom Post Type Permalinks」をインストールするべきでしょう。
ただ、マルチサイト化したWordPressだと「wp_get_archives()」での投稿タイプの月別アーカイブリストの表示がうまくいきませんでした。
具体的に言うと、カスタム投稿タイプを追加したサイトではないサイト上で「switch_to_blog()」を使ってカスタム投稿タイプの月別アーカイブリストを表示しようとするとリンク自体は表示されるのですがリンク先がおかしくなってしまいます。
マルチサイトに対応すれば「Custom Post Type Permalinks」は無敵になると思います!!
2014年03月04日 追記
マルチサイトでも「Custom Post Type Permalinks」の「wp_get_archives()」を正常に機能させる方法をエントリーしました。
参考にしてください。
Pingback: カスタム投稿タイプとカスタムタクソノミーまとめ()
Pingback: 【WordPressプラグイン】functions.phpをいじりたくない人向け20選()
Pingback: カスタム投稿タイプのパーマリンクを変更する | WordPressカスタマイズ事典()
Pingback: ワードプレスの便利なプラグイン()