WordPress カスタム投稿タイプ名とURLを別にしたい

WordPressでカスタム投稿タイプを作る際、例えば post にしたい場合ってありますよね。(ないかww)

WordPressをご存知の方であれば危険性はわかると思います。 post は通常の投稿タイプでこれにかぶらせるのはできないんですね。

カスタム投稿タイプのURLを指定する方法

カスタム投稿タイプを作るところからの方にはコードを…

あまりおすすめしませんがその場合でもこのコードを functions.php 等に差し込むことでなんとかなります。

add_action( 'init', 'my_post_type' );
function my_post_type() {
  register_post_type( 'damasukasu', [ // 投稿タイプ名を定義
    'labels' => [
      'name'          => 'だますかす', // 管理画面の投稿タイプ名
      'singular_name' => 'damasukasu',    // カスタム投稿の識別名
    ],
    'public'        => true,
    'has_archive'   => true,
    'show_in_rest'  => true,
    'rewrite' => array('slug' => 'post', 'with_front' => false) // damasukasu を /post で表示したい
  ]);
}

※post にするのはあまりおすすめしません。

CPT UI での設定なら…

投稿タイプの追加と編集 画面から

  • リライト
  • カスタムリライトスラッグ
  • フロントでのリライト

項目を確認・設定してください。

リライト → True
カスタムリライトスラッグ → {任意のもの}
フロントでのリライト → False ※説明を読んでください。

これで、「だますかす」の記事は /post/〜〜 で表示されるようになります。

あまり需要はないかもしれませんがw

…そして、その前にカスタム投稿タイプ名がそのまま使えるようにした方が絶対に良いのですが…

こんな方法もありますよ! ということで、思い出していただけたらと思います。

この記事が気に入ったら
いいね ! しよう

Twitter で