独自の投稿タイプを作成

独自の投稿タイプを作成するには、functions.phpファイルにinitのアクションフックでregister_post_type関数を使用します。

  • ※ 投稿タイプは標準の投稿機能を独自に開発できる機能です。

構文

引数名 型 初期値 説明
第一引数
必須
キー string 投稿タイプの識別子。
スラッグとしても使用される。
キーとは別にスラッグを指定したい場合は、オプションのrewriteキーにあるslugキーを使用する。
第三引数 オプション array array() 詳細な設定。
詳しくは、オプションを参照。

オプション

キー 型 初期値 説明
label string 投稿タイプの名称。
サイドメニューや見出しなどで表示される。
labels array 様々な箇所で表示する名称。
詳しくは、labelsキーの内容を参照。
description string 投稿タイプの説明文章。
public boolean false 管理画面に表示かどうかの全ての初期値。
例えばshow_uiキーなど。
なお、publicをtrueにしないとshow_in_restがtrueの際、パーマリンクパネルが表示されない。
(show_in_restがfalseの場合はスラッグを表示することができる)
hierarchical boolean false 記事を親子関係(階層)で構成できるようにするか。
show_ui boolean publicキーの値 管理画面に表示するか。
show_in_menu boolean show_uiキーの値 メニューに表示するか。
menu_position integer false メニューの表示する位置。
初期はコメントメニューの次に挿入されます。
次の位置を基準に指定できる。
2~ ... "ダッシュボード"の次
4~ ... "投稿"の次
10~ ... "メディア"の次
20~ ... "固定ページ"の次
25~ ... "コメント"の次
59~ ... "外観"の次
65~ ... "プラグイン"の次
70~ ... "ユーザー"の次
75~ ... "ツール"の次
80~ ... "設定"の次
100~ ... "設定との境界(ダッシュボードと投稿の間と同じ)"の次
menu_icon string '' メニューで表示するアイコン。
img要素のsrc属性の値として設定されるため、画像のパスやBase64でエンコードされた値などを指定する。
show_in_nav_menus boolean publicキーの値 外観のメニューに表示するか。
show_in_rest boolean false REST APIとして使用可能にするかどうか、さらに新規・編集画面をリッチにするかどうか。
APIのURLはhttps://example.co.jp/wp-json/wp/v2/識別子(識別子はregister_post_type関数の第一引数)。
rest_base string show_in_restキーがtrueの場合、APIのURLの最後を指定の値に変更する。
https://example.co.jp/wp-json/wp/v2/rest_baseの値
rest_controller_class string 'WP_REST_Terms_Controller' ※ 不明
rewrite array publicキーの値 投稿タイプおよび記事のURLアクセス時のパーマリンクの設定。
詳しくは、rewriteキーの内容を参照。
publicly_queryable boolean publicキーの値 投稿タイプおよび記事のURLアクセスでURLパラメーターでアクセスを許可するかどうか。
URLパラメーターは?識別子=記事のスラッグであるが、実際にアクセスすると/識別子/記事のスラッグ/に置き換わる。
query_var boolean
または
string
register_post_type関数の第一引数 publicly_queryableがtrueの場合のURLパラメーターのキーを指定。
例(値がsbjの場合):?sbj=記事のスラッグ = /sbj/記事のスラッグ/
exclude_from_search boolean publicキーの値 サイト内検索から除外するか。
has_archive boolean false アーカイブページを有効にするかどうか。
trueを指定した場合は、archive.phpやarchive-識別子.phpでアーカイブ(一覧)ページを設置することができる。
supports array array('title', 'editor') 記事として投稿できる情報。
次の情報を指定可能。
'title' ... タイトル(見出し)
'editor' ... 本文
'comments' ... コメント・ディスカッション
'revisions' ... 更新履歴(リヴィジョン)
'trackbacks' ... トラックバック
'author' ... 投稿者
'excerpt' ... 抜粋
'page-attributes' ... 属性(親記事や順序など)
'thumbnail' ... アイキャッチ画像
'custom-fields' ... カスタムフィールド
'post-formats' ... ※ 不明

  • ※ 'thumbnail'を表示するにはadd_theme_support('post-thumbnails')を追加する必要がある。
can_export boolean true エクスポートを可能にするかどうか。
"ツール"の"エクスポート"での表示の有無の設定。

labelsキーの内容

キー 型 初期値 説明
name string labelキーの値 全体の名称。
メニューや見出しで表示される。
menu_name string nameキーの値 メニューの名称。
add_new string 新規追加ボタンのテキスト。
add_new_item string 新規追加画面の見出し。
edit_item string 編集画面の見出し。
all_items string menu_nameの値 サブメニューで表示される一覧メニューの名称。
not_found string 1件も登録されていない場合のメッセージ(ゴミ箱は除く)。
not_found_in_trash string ゴミ箱に1件もない場合のメッセージ。
search_items string 検索ボタンのテキスト。
parent_item_colon string '親ページ' 一覧で親の記事がない時にタイトル名に親を表示する際のラベル。
attributes string 'ページ属性' 親ページや順序などのパネルの見出し。
singular_name string nameキーの値 "外観"の"メニュー"でメニューに追加されているときに表示する右側の投稿タイプの名称。
view_item string 表示リンクのテキスト。
表示リンクは編集画面の管理バー、記事を更新した際に表示されるアラートメッセージに表示される。
view_items string 一覧画面の管理バーで表示されている表示リンクのテキスト。
item_updated string 記事を更新した際に表示されるアラートメッセージのテキスト。
featured_image string 'アイキャッチ画像' アイキャッチの画像を選択するためのパネルの見出し。
set_featured_image string 'アイキャッチ画像を設定' アイキャッチの画像を選択するボタンのテキスト。
remove_featured_image string 'アイキャッチ画像を削除' 設定中のアイキャッチの画像を解除(削除)するボタンのテキスト。
use_featured_image string ※ 不明
items_list string ※ 不明
items_list_navigation string ※ 不明
item_published string 新規に記事を作成し公開した時に表示されるメッセージのテキスト。
uploaded_to_this_item string ※ 不明
filter_items_list string ※ 不明
item_reverted_to_draft string ※ 不明
item_scheduled string ※ 不明
archives string ※ 不明

rewriteキーの内容

キー 型 初期値 説明
slug string register_post_type関数の第一引数 投稿タイプのスラッグの名称。
例(値を'foo/bar'とした場合):/foo/bar/記事のスラッグ/
with_front boolean true "設定"の"パーマリンク設定"を最初に実行するかどうか。
hierarchical boolean false URLに階層を許可するかどうか。

サンプルコード

functions.php

CMS「WordPress」逆引きリファレンス一覧へ戻る