WordPress案件でよく使うカスタム投稿の一番簡単な作り方【単価アップ可】

2020年12月23日

wordpress カスタム投稿とは

WordPress案件でよく出てくる「カスタム投稿」とは。
仕事で必要となるのに、スクールや職業訓練で教わることもないので、独学するか制作会社に勤めてノウハウを得るかだと思います。
難しそうな印象ですが、コーディングは分業が基本のデザイナーでも作ることができたので、恐るるに足らず。
備忘も兼ねてまとめてみます。

そもそもカスタム投稿とは?

WordPressにはデフォルトで投稿機能が1つついています。
これ1つでブログも商品情報も施工事例も更新していくのは不便なので、新たに作る投稿機能がカスタム投稿です。
元の投稿機能にカテゴリーで記事を分けたらいいとも思えますが、それだと内容ごとに異なるデザインにしたり、パーマリンクに/category/といちいち付いてくるのでカスタム投稿を使う方が便利なのです。

また、カスタム投稿の用語について、
・タクソノミー=カテゴリー
・ターム=カテゴリーの中の項目
と同じです。

カスタム投稿のプラグイン

Advanced Custom Fields

このプラグインは後述のfunction.phpの追記とともに使用します。
インストールして有効化したら、管理画面から「カスタムフィールド」→「フィールドグループ」を新規追加し、カスタム投稿で必ず記載する項目を編集・追加します。
例えば商品情報ページなら、値段・種類・用途・発売年などをここに登録することで、カスタム投稿の編集画面では数値を入力するだけで更新できます。

Custom Post Type UI

function.phpは編集しないで作る場合は、Custom Post Type UIというプラグインを使うのが一番簡単な方法だと思います。

function.phpに追記

子テーマを使っている場合は子テーマのfunction.phpに以下を記載する。

【例:商品ページを作る場合】

function init_func() {
add_theme_support('title-tag’);
add_theme_support('post-thumnails’);

register_post_type('item’, [
'labels’ => [
'name’ => '商品’,
'singular_name’ => '商品’,
'add_new’ => '商品を追加’,
'add_new_item’ => '商品を追加’,
'edit_item’ => '商品の編集’,
'new_item’ => '新しい商品’,
'all_item’ => 'すべての商品’,
'view_item’ => '商品を見る’,
'search_items’ => '商品を探す’,
'not_found’ => '商品は見つかりませんでした’,
'not_founf_in_trash’ => 'ゴミ箱は空です’,
'parent_item_colon’ => ",
'menu_name’ => '商品’,
],
'public’ => true,
'has_archive’ => true,
'hierarchical’ => true,
'supports’ => [
'title’,
'editor’,
'thumbnail’,
'page-attributes’,
],
'menu_position’ => 5,
'menu_icon’ => 'dashicons-cart’
]);
}
add_action('init’, 'init_func’);

管理画面の通常の投稿の下に、カスタム投稿が出ていたらちゃんとカスタム投稿が追加されています。
'supports’はカスタム投稿の編集画面で表示される項目です。

設定したカスタム投稿が表示されない時

管理画面の「設定」→「パーマリンク設定」→変更を保存ボタンを押す。

プラグインのバグなのか大体これで解決します。

まとめ

以上、カスタム投稿について簡単にまとめてみました。
これを応用していけば色々なカスタム投稿が作れるはず。。