今回は
- カスタム投稿タイプとは?
- カスタム投稿タイプを作ると何ができる?
- カスタム投稿タイプの作り方は?
この辺りを解説していきます!
カスタム投稿タイプとは?
カスタム投稿タイプとは通常の投稿タイプ「post」、固定ページの投稿タイプ「page」などの他に新しく自分で作ることができる投稿タイプを指します。
そもそも投稿タイプとは、WordPressが記事によって処理を変えるために使われているものです。例えば、投稿記事一覧を表示したい場合は投稿タイプが「post」の記事を全て表示するようにします。WordPressの内部処理に使われているのが投稿タイプというわけです。
カスタム投稿タイプを作るとその投稿タイプの記事だけ別のページに表示したり、別のテンプレートを使うことができます。
例えば水族館サイトをWordPressで作るとして、日常のブログ記事を投稿するページとイベント情報を投稿するページを分けたいとします。
その場合、日常のブログ記事は普通の投稿タイプ「post」を使い、イベント記事は新しく作ったカスタム投稿タイプ「event」(名前は任意)を使うことで、投稿タイプが「event」のみの記事一覧ページを作成したり、別のテンプレートを使うことができます。
カスタム投稿タイプの作り方
カスタム投稿タイプの作り方は、
- プラグイン「Custom Post Type UI」を使う方法
- functions.phpに記述する方法
の2通りあります。
簡単なのはCustom Post Type UIを使う方法なので、今回はこちらを紹介します。
Custom Post Type UIを使ってカスタム投稿タイプを作る
まずはプラグインをインストールして有効化しましょう。「cptui」で検索すると出てきます。
有効化すると「CPT UI」というメニューが追加されるので、「投稿タイプの追加と編集」をクリックします。
これが新しい投稿タイプを追加する画面です。入力項目は画像にある3つです。
スラッグは新しく作る投稿タイプにアクセスするためのURLみたいなものです。
例えば「event」というスラッグのカスタム投稿タイプで新しく記事を公開した場合、記事のURLは「https://ドメイン名/event/記事のパーマリンク」となります。
他にも、このカスタム投稿タイプの記事一覧ページを作りたい場合は「archive-event.php」、個別記事ページを作りたい場合は「single-archive.php」というようにテンプレートのファイル名にも使います。わかりやすい名前にするといいと思います。
カスタム投稿タイプの設定
下にスクロールすると設定項目が出てきます。
最低限やっておくべきは、「アーカイブあり」をTrueにすることです。
カスタム投稿タイプの記事一覧ページを作るには「archive-[slug].php」を作る必要がありますが、これをTrueにしないと反映されないので気をつけてください。とりあえず無条件でやっておきましょう。
その他にも設定項目はたくさんありますが、基本的にこれだけで大丈夫です。残りは必要に応じて設定してください。
設定まで終えたら上に戻って「投稿タイプを追加」をクリックします。
これで新しいカスタム投稿タイプが追加されました!
クリックすると投稿ページと同じように記事一覧画面が表示されます。
カスタム投稿タイプも普通の投稿ページと同じように記事を書くことができます。
パーマリンクを見ると、さっき決めたスラッグがURLに反映されているのがわかります。
カスタム投稿タイプの記事一覧ページを作りたい場合は?
archive-[slug].phpというファイルを作ります。
[slug]の部分にはカスタム投稿タイプのスラッグ名を入れましょう。そうするとWordPressが「[slug]というカスタム投稿タイプのアーカイブページだな」と勝手に認識してくれます。
同じようにカスタム投稿タイプの個別記事ページを作りたい場合は「single-[slug].php」というファイルを作ればokです。
まとめ
カスタム投稿タイプを使いこなせるようになるとWordPressカスタマイズの幅がかなり広がります!
特定のカスタム投稿タイプの記事一覧ページはデザインやレイアウトををガラッと変えるということもできるので試してみてくださいね!