WordPress

✅ 【初心者向け】コピペで簡単!WordPressでカスタム投稿タイプを作成する方法

こんにちは、コーダーのためのWeb制作ブログの中の人です!👋
WordPressサイト制作をしている中で、一番よく使う機能の一つがカスタム投稿タイプです。
初学者の頃は全く分からずカスタム投稿ってなんだ?どうやったら実装するんだろうって頭抱えてました(笑)😂
今回は私が実際の現場で使っているコードを元に記事を書いていきます!

✅ この記事でわかること

  • カスタム投稿タイプとは何か
  • コピペで使えるコード
  • 表示されないときの注意点

🔰 カスタム投稿タイプって何?

通常の「投稿」や「固定ページ」とは別に、自分で好きな投稿タイプを追加できる機能です。
例えば、「お知らせ」「制作実績」「商品情報」などを、独立した投稿タイプとして管理できます。


💡 どうやって作るの?

カスタム投稿タイプは functions.php にコードを追加して作成します。


✨ コピペでOK!自分がよく現場で使うコード

以下は「制作実績(works)」という投稿タイプを追加する例です。

// カスタム投稿タイプ「制作実績」
function create_post_type_works() {
  register_post_type('works',
    array(
      'labels' => array(
        'name' => '制作実績',
        'singular_name' => '制作実績',
        'add_new' => '新しい制作実績',
        'add_new_item' => '制作実績を追加',
        'edit_item' => '制作実績を編集',
        'new_item' => '新しい制作実績',
        'all_items' => '全ての制作実績',
        'view_item' => '制作実績を見る',
        'search_items' => '制作実績を検索',
        'not_found' => '制作実績が見つかりませんでした',
        'not_found_in_trash' => 'ゴミ箱に制作実績はありません',
        'parent_item_colon' => '',
        'menu_name' => '制作実績'
      ),
      'public' => true,
      'has_archive' => true,
      'menu_position' => 5,
      'menu_icon' => 'dashicons-portfolio',
      'supports' => array('title', 'editor', 'thumbnail', 'excerpt'),
      'rewrite' => array('slug' => 'works'),
      'show_in_rest' => true,
    )
  );
}
add_action('init', 'create_post_type_works');

// カスタムタクソノミー「制作カテゴリー」を追加
function create_works_taxonomy() {
  register_taxonomy(
    'works-category',
    'works',
    array(
      'label' => '制作カテゴリー',
      'hierarchical' => true,
      'public' => true,
      'show_in_rest' => true,
    )
  );
}
add_action('init', 'create_works_taxonomy');

📌 コードの解説

  • 'works':投稿タイプのスラッグ(URLに使われる)
  • ‘public’ : このカスタム投稿タイプを公開するかどうか
  • ‘has_archive’ :アーカイブページを持つかどうか
  • ‘menu_position’ :管理メニューでの表示位置(5は投稿の下あたり)
  • ‘menu_icon’ : 管理メニューに表示するアイコン(ポートフォリオアイコン)
  • 'supports':投稿画面に表示する項目サポートする機能(タイトル、エディタ、アイキャッチ画像、抜粋)
  • 'show_in_rest' => true:ブロックエディタ(Gutenberg)対応に必須

😱 WordPress初心者あるある!関数セットの片割れ忘れに注意⚠️

WordPress始めたての方がハマりがちなミス!😅

function create_post_type_works() { ... }add_action('init', 'create_post_type_works'); の片方だけ書いちゃった経験ありませんか?🤔

これって関数を作っても呼び出さない、または存在しない関数を呼ぼうとしてるから当然エラーに…💦

カスタム投稿タイプ作るときは、この2つはセットで書かないとダメなんです!✌️ たまに見落としがちなので要チェック👀
初学者の頃はこれを知らず自分はハマってしまった😱


🧪 追加したのに表示されないときは?

1. パーマリンク設定を更新

  1. 管理画面 → 設定 → パーマリンク
  2. 何も変更せずに「変更を保存」ボタンを押すだけ

2. 投稿画面が見当たらないとき

  • 管理画面左のメニューに「制作実績」が出ない場合は、コードのミスがないか確認!

🎁 おまけ:管理画面アイコンを変えるには?

menu_icon オプションを使えば、アイコンを好きなものに変えられます。
例えばサロン(美容室・エステ・ネイルなど)用のカスタム投稿タイプならにするとアイコンが❤️になるので一目でわかりやすくなります!

'menu_icon' => 'dashicons-heart',

参考:公式アイコン一覧
👉 https://developer.wordpress.org/resource/dashicons/


🧩 まとめ

やったこと内容
カスタム投稿タイプの作成方法register_post_type() を使って実装
コピペコード紹介「制作実績」投稿タイプのサンプル
注意点functions.phpの編集ミス防止、パーマリンク更新

👇この記事が役に立ったら…

  • Xで「#WordPress勉強中」でシェアしてみましょう!
  • 質問やリクエストがあればお気軽にコメントどうぞ!

✉️ あなたのリクエスト教えてください!

「この記事わかりやすかった!」
「他にもこんな記事書いてほしい!」
そんな声を、ぜひXのDMで教えてください!😊📩

できるだけリクエストにお応えして、今後の記事作成に活かしていきます

▶️ Xもフォローしてもらえるとめちゃくちゃ嬉しいです!

hisa

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA