2026年8月25日
2026年8月25日
Toolset Typesでカスタム投稿タイプとカスタムフィールドを作る手順と表示方法
Toolset は、OnTheGoSystems が開発する WordPress 用の有料プラグイン群です。中心になる Toolset Types で、カスタム投稿タイプ、タクソノミー、カスタムフィールド、投稿どうしの関連付けを管理画面から作れます。作った項目は Toolset Blocks(ブロックエディターで表示を組む部品)や、テーマの PHP から表示します。
この記事では、Toolset Types でカスタム投稿タイプと投稿用・ユーザー用のカスタムフィールドを作り、テーマのテンプレートで値を出すまでを説明します。画面の名前は Toolset 公式ドキュメント(toolset.com)の表記に合わせています(2026年11月時点で確認)。
導入前に知っておきたいこと
- wordpress.org のプラグインディレクトリにはありません。 管理画面の「プラグインを追加」で検索しても見つからないので、toolset.com のアカウントから ZIP をダウンロードして入れます。
- アップデートとサポートには有効な契約が要ります。 契約を更新しないと、プラグインの更新が届かなくなります。
- 一部の機能はレガシー扱いです。 公式ドキュメントの「Legacy features」では、Toolset Views・Toolset Layouts・Toolset Maps などが、サポートは続けるが資料は現状のまま提供する扱いになっています。公式フォーラムでは、スタッフが「サポートは続けるが、新機能の開発は保留している」と回答しています。新しく作るサイトで長く使う予定なら、この状況を踏まえて選んでください。
カスタム投稿タイプを1つ足すだけなら、プラグインを使わずに register_post_type() で登録する方法もあります。手順は WordPressのカスタム投稿タイプを登録する方法 を参考にしてください。
ステップ1:Toolset Types を入れてサイトを登録する
- toolset.com にログインし、アカウントのダウンロードページから Toolset Types の ZIP をダウンロードします。
- WordPress の管理画面で「プラグイン」→「プラグインを追加」→「プラグインのアップロード」を開き、ZIP を選んでインストールし、有効化します。
- toolset.com のアカウントの Sites ページで、このサイトの URL に対する サイトキー を作ります。サイトキーはサイトの URL ごとに発行されます。
- 管理画面の「プラグインを追加」画面にある Commercial タブを開き、サイトキーを入力して登録します。登録後は、この画面から Toolset Blocks など他の部品も入れられます。
開発用サイトとステージングサイトは URL が違うので、それぞれにサイトキーが要ります。1サイト用の契約ではキーが1つしかないため、本番以外を登録するかどうかは契約の範囲を確認してから決めてください。
ステップ2:カスタム投稿タイプを作る
- 管理画面の Toolset → Dashboard を開きます。
- Add new post type をクリックします。
- 複数形の名前(例: Books)と単数形の名前(例: Book)を入れます。スラッグは自動で入ります(例:
book)。 - 下にある Options では、パーマリンク、アーカイブの有無、管理画面での表示などを決めます。これらは WordPress の
register_post_type()の引数に対応しています。迷ったら初期値のままで構いません。 - Save Post Type をクリックします。
保存すると、管理画面の左メニューに新しい投稿タイプが現れます。パーマリンクの 404 が出る場合は、「設定」→「パーマリンク」を開いて「変更を保存」を押すと、書き換えルールが作り直されます。
ステップ3:投稿用のカスタムフィールドを作る
- Toolset → Dashboard で、作った投稿タイプの行にある Add custom fields をクリックします。
- フィールドの種類(一行テキスト、数値、画像、日付など)を選びます。
- フィールド名を入れます(例: Price)。スラッグは自動で入ります(例:
price)。 - 種類ごとのオプションを設定します。
- 他にも項目が要るなら Add New Field で追加し、最後に Save Field Group をクリックします。
これで、その投稿タイプの編集画面にフィールドが表示されます。
Toolset → Custom Fields から Add New でフィールドグループを作り、「Where to include this Field Group」で対象の投稿タイプを選ぶ方法もあります。1つのフィールドを複数入力できるようにするには、フィールドの設定で Allow multiple instances of this field を選びます(繰り返しにできない種類もあります)。
ステップ4:ユーザー用のカスタムフィールドを作る
会員の所属や担当分野など、ユーザーごとの情報を持たせる場合はユーザーフィールドを使います。
- Toolset → Custom Fields を開き、Add New をクリックします。
- 作るグループの種類で User Fields を選びます。
- グループ名を付け、フィールドを追加します。
- Where to display this group で、このグループを使うユーザー権限グループ(管理者、編集者、購読者など)を選んで保存します。
選んだ権限グループのユーザーのプロフィール編集画面に、フィールドが表示されます。表示されない場合は、グループの表示対象にそのユーザーの権限グループが入っているかを確認してください。
ステップ5:テーマのテンプレートで値を表示する
ブロックテーマやブロックエディターで表示を組むなら Toolset Blocks を使います。従来型のテーマで PHP テンプレートに直接書く場合は、Toolset の関数を使います。
<?php
// single-book.php などのテンプレート(ループの中)
// 投稿用フィールド。'output' => 'raw' で書式を付けずに保存値を返す
if ( function_exists( 'types_render_field' ) ) {
echo esc_html( types_render_field( 'price', array( 'output' => 'raw' ) ) );
}
// ユーザー用フィールド。ログイン中のユーザーの値を出す
if ( function_exists( 'types_render_usermeta' ) ) {
echo esc_html( types_render_usermeta( 'department', array( 'output' => 'raw', 'user_current' => true ) ) );
}
// Toolset の関数を使わずに読む場合は、メタキーに wpcf- 接頭辞が付く
$price = get_post_meta( get_the_ID(), 'wpcf-price', true );
echo esc_html( $price );
押さえておく点は次のとおりです。
| 項目 | 内容 |
|---|---|
| フィールドの指定 | types_render_field() などには、フィールドのスラッグ(price)をそのまま渡す |
| WordPress 標準関数で読む場合 | get_post_meta() では wpcf-price のように接頭辞付きのキーを使う |
output 引数 |
raw で保存値そのもの。省略すると Toolset の書式(画像なら img タグなど)で返る |
| 特定のユーザー | types_render_usermeta() に user_id を渡すと、そのユーザーの値を返す |
| 関数の存在確認 | Toolset を止めたときに致命的エラーにならないよう function_exists() で囲む |
運用上の注意
- プラグインを止めると投稿タイプが消えたように見えます。 カスタム投稿タイプは Toolset が登録しているため、無効化すると管理画面から見えなくなります。投稿とフィールドの値はデータベースに残りますが、表示するには Toolset を有効に戻すか、同じスラッグで
register_post_type()を自分で書く必要があります。 - スラッグは後から変えないようにします。 フィールドのスラッグはメタキー(
wpcf-スラッグ)とテンプレートのコードに使われているので、変えると既存の値やテンプレートとつながらなくなります。 - 設定を変える前にバックアップを取ります。 投稿タイプやフィールドグループの変更は、データベースと表示の両方に影響します。
まとめ
- Toolset は toolset.com から入手する有料プラグインで、Types がカスタム投稿タイプとフィールドを担当する
- 投稿タイプは Toolset → Dashboard の Add new post type、フィールドは Add custom fields か Toolset → Custom Fields で作る
- ユーザー用フィールドは User Fields のグループを作り、表示する権限グループを選ぶ
- テンプレートでは
types_render_field()とtypes_render_usermeta()を使い、標準関数で読むときはwpcf-接頭辞を付ける - 新機能の開発が保留中である点を踏まえ、長く使うかどうかを判断する
ほかのカスタムフィールド用プラグインと比べたい場合は、Advanced Custom Fields(ACF)の使い方 も参考にしてください。