[WordPress]カスタム投稿タイプを実装する
テーマにカスタム投稿タイプを実装する方法について紹介。
カスタム投稿タイプとは?
WordPressには標準で投稿ページと固定ページがあります。
大体はこれで事足りるのですが、サイトによっては投稿・固定以外に別の投稿タイプを実装したい時があります。
- ショップ情報を追加したい
- アイテム情報を追加したい
- 記事とは別にレシピページを追加したい
こうしたケースでは、カスタム投稿タイプを実装することで対応できます。
カスタム投稿タイプを実装
functions.phpに以下のコードを実装。
<?php
add_action('init', function () {
register_post_type('item', [
'label' => '商品',
'public' => true
]);
});
カスタム投稿タイプにアイコンを反映させる
上記コードで管理画面のコメント下側に「商品」というカスタム投稿タイプが追加されます。
デフォルトのアイコンでもいいですが、カスタム投稿タイプに合ったアイコンを使いたい時はmenu_iconを追加。
<?php
add_action('init', function () {
register_post_type('item', [
'label' => '商品',
'menu_icon' => 'dashicons-products',
'public' => true
]);
});
アイコンのコードはどこから引っ張ってくるかというと、公式サイトから引っ張ってきます。
Dashicons | WordPress Developer Resources
カスタム投稿タイプを複数実装する
場合によっては複数のカスタム投稿タイプを実装したいケースもあるかもしれません。
「商品」「ショップ」と複数のカスタム投稿タイプを設定します。
<?php
add_action('init', function () {
register_post_type('item', [
'label' => '商品',
'menu_icon' => 'dashicons-products',
'public' => true
]);
register_post_type('item', [
'label' => 'ショップ',
'menu_icon' => 'dashicons-products',
'public' => true
]);
});
複数のカスタム投稿タイプの実装は割とシンプル。
register_post_typeを複数記述すればOK。
カスタム投稿タイプの位置を変更する
デフォルトでは、コメントの下にカスタム投稿タイプが表示されます。
でも、これって変更できるんですよね。
具体的には、menu_postitionの引数で変更できます。