【AI作成】Craft CMS Field Builder プラグイン完全ガイド
概要
Craft CMS Field Builder は、Craft CMS サイトの構造を素早く構築するための強力なプラグインです。プリセットやCSVファイルから、フィールド、セクション、エントリタイプなどを一括で作成でき、開発時間を大幅に短縮します。
主な特徴
- ワンクリック構築: 事前定義されたプリセットから完全なサイト構造を即座に生成
- CSV インポート/エクスポート: 既存の構造をCSVでエクスポートし、他のプロジェクトで再利用可能
- 多言語対応: 日本語と英語に対応(今後さらに拡張予定)
- コンソールコマンド: CLIから全ての機能にアクセス可能
- 柔軟な設定: プロジェクトのニーズに合わせてカスタマイズ可能
機能一覧
1. プリセット機能
現在利用可能なプリセット:
- corporate-ja(日本企業サイト): 会社概要、サービス、採用情報などの基本構造
今後追加予定のプリセット:
- corporate-en(英語企業サイト)
- ecommerce(ECサイト)
- blog(ブログ/マガジン)
- portfolio(ポートフォリオ)
2. CSV インポート/エクスポート
以下の要素をCSVファイルで管理:
- フィールド定義
- セクション設定
- エントリタイプ
- ボリューム(アセット保存場所)
- フィールドレイアウト
- ユーザーグループ
- サイト設定
3. コンソールコマンド
主要なコマンド:
# プリセット一覧表示
php craft field-builder/preset/list
# プリセットから構築
php craft field-builder/preset/build corporate-ja
# サンプルコンテンツ付きで構築
php craft field-builder/preset/build corporate-ja --with-content
# CSVインポート
php craft field-builder/preset/import-csv /path/to/template.csv
4. コントロールパネル機能
- ビジュアルなプリセット選択画面
- CSV アップロード&プレビュー
- 進捗表示
- エクスポート機能
詳細な使い方
プリセットを使用した構築
1. コマンドラインから実行
# バックアップを取りながら構築(推奨)
php craft field-builder/preset/build corporate-ja --backup
# インタラクティブモードで実行
php craft field-builder/preset/build corporate-ja --interactive
2. コントロールパネルから実行
- 「ユーティリティ」→「Field Builder」を選択
- 使用したいプリセットを選択
- オプションを設定(バックアップ、サンプルコンテンツなど)
- 「Build Structure」をクリック
CSV インポート機能の使い方
1. CSVファイルの準備
CSVファイルは以下の形式に従う必要があります:
fields.csv の例:
name,handle,type,groupHandle,settings
会社名,companyName,plainText,common,"{""placeholder"":""株式会社○○""}"
概要,summary,redactor,common,"{""availableTransforms"":""*"",""availableVolumes"":""*""}"
sections.csv の例:
name,handle,type,enableVersioning,uriFormat,template
お知らせ,news,channel,true,news/{slug},news/_entry
製品情報,products,channel,true,products/{slug},products/_entry
2. インポート実行
コマンドラインから:
php craft field-builder/preset/import-csv /path/to/fields.csv
コントロールパネルから:
- 設定 → プラグイン → Field Builder
- 「Import CSV Files」をクリック
- CSVファイルまたはZIPファイルを選択
- プレビューを確認して「Import」をクリック
3. ZIP形式でのインポート
複数のCSVファイルをZIPにまとめてインポートすることも可能です:
import-files.zip
├── fields.csv
├── sections.csv
└── entry-types.csv
エクスポート機能の使い方
1. 個別エクスポート
コントロールパネルから各要素を個別にエクスポート:
- 「Export Fields」: フィールド定義をCSVでダウンロード
- 「Export Sections」: セクション設定をCSVでダウンロード
- 「Export Entry Types」: エントリタイプをCSVでダウンロード
2. 選択的エクスポート
必要な要素だけを選択してエクスポート:
- エクスポートしたい項目にチェック
- 「Export Selected as CSV」をクリック
- 各ファイルが個別にダウンロードされます
サンプルコンテンツの生成
プリセットと一緒にサンプルコンテンツを生成できます:
# 10件のサンプルエントリを生成
php craft field-builder/preset/build corporate-ja --with-content --sample-entries=10
コントロールパネルからも設定可能:
- 「Enable Sample Content」にチェック
- 生成するエントリ数を指定
カスタム設定
config/field-builder.php を作成して詳細な設定が可能:
<?php
return [
// バックアップ機能を有効化
'enableBackup' => true,
// サンプルコンテンツ生成を有効化
'enableSampleContent' => true,
// デフォルト言語
'defaultLanguage' => 'ja',
// 利用可能なプリセット
'enabledPresets' => [
'corporate-ja',
'corporate-en',
],
// デフォルトのサンプルエントリ数
'defaultSampleEntries' => 10,
// 詳細オプションの表示
'showAdvancedOptions' => true,
];
対応フィールドタイプ
以下のCraft CMSフィールドタイプに対応:
- PlainText: プレーンテキスト
- Redactor: リッチテキストエディタ(要Redactorプラグイン)
- Assets: ファイル/画像アップロード
- Date: 日付選択
- Email: メールアドレス
- Dropdown: ドロップダウン選択
- Checkboxes: チェックボックス
- RadioButtons: ラジオボタン
- Number: 数値
- Categories: カテゴリ選択
- Tags: タグ
- Matrix: マトリックス(複雑な構造化コンテンツ)
- Table: テーブル
トラブルシューティング
よくある問題と解決方法
1. 「Class not found」エラー
フィールドタイプのクラスが見つからない場合:
- 必要なプラグイン(Redactor等)がインストールされているか確認
- フィールドタイプ名が正しいか確認
2. インポートエラー
CSVインポートでエラーが発生する場合:
- CSV形式が正しいか確認(特に引用符とエスケープ)
- 必須フィールドが全て含まれているか確認
- JSONフォーマットの設定が正しいか確認
3. 権限エラー
操作が実行できない場合:
- ユーザーに適切な権限があるか確認
- プラグインが有効化されているか確認
ベストプラクティス
1. バックアップの活用
大規模な変更を行う前は必ずバックアップを取る:
php craft field-builder/preset/build corporate-ja --backup=1
2. 段階的な構築
大規模なサイトの場合、段階的に構築することを推奨:
- まずフィールドのみインポート
- 次にセクションとエントリタイプ
- 最後にサンプルコンテンツ
3. CSVテンプレートの活用
空のテンプレートをダウンロードして編集:
php craft field-builder/preset/generate-csv-template /path/to/output
4. バージョン管理
CSVファイルをGitで管理することで、サイト構造の変更履歴を追跡:
project/
├── config/
├── templates/
└── field-builder/
├── fields.csv
├── sections.csv
└── entry-types.csv
まとめ
Craft CMS Field Builder プラグインは、Craft CMSサイトの構築を大幅に効率化します。特に以下のようなケースで威力を発揮します:
- 複数の類似プロジェクトを扱う制作会社
- 定型的なサイト構造を持つプロジェクト
- 開発環境から本番環境への構造の移行
- チーム間でのサイト構造の共有
プリセット機能とCSVインポート/エクスポート機能を組み合わせることで、柔軟かつ効率的なワークフローを実現できます。
今後の展望
開発ロードマップには以下の機能が含まれています:
- ビジュアルフィールドレイアウトデザイナー
- クラウドプリセットライブラリ
- AI支援によるフィールド提案
- チームコラボレーション機能
- GraphQLスキーマ生成
- リアルタイム構造プレビュー