【Craft 3 サイト構築の基本】Architect プラグインを利用したセクションの作成

これは Craft CMS Advent Calendar 2018 16日目の記事です。
連載「サンプル制作で覚える Craft 3 サイト構築の基本」として、作成済みの「ニュース」セクションを除くすべてのセクションを一括登録してみます。

ここでは、次の作業を行います。

  1. プラグインのインストール
  2. JSON データの準備
  3. インポートの実行

インポート用の JSON データは「素材データ専用リポジトリ vol-11 ブランチ」にコミットしてあります。

プラグインのインストール

ここでは、セクションやボリュームなどの設定をインポート、エクスポートできる Architect プラグインを利用します。

なお、現在のバージョンでは、既に登録されているものと同一のハンドル名の場合にエラーとなります。これはセクション、フィールドなどを問いません。そのため「新しいセクションの追加」や「新規インストールした別環境の Craft 3 へ最初にまとめてインポートする」といった用途がメインとなります。

プラグインストア

グローバルナビゲーションから プラグインストア に移動後、キーワード architect でヒットする Architect プラグインをクリックします。

Architect プラグインのモーダル

プラグインの説明などが記載されたモーダルウィンドウが開きますので、右上にある インストール ボタンをクリックします。

Composer のアップデート画面

プロジェクトルートの composer.json にプラグインが追記され、内部的に composer update が実行されます。インストール完了後、グローバルナビゲーションに Architect が追加されていることを確認してください。

JSON データの準備

インポートにあたり、データソースとなる JSON ファイルを用意します。【サンプルデータ】

Architect プラグインは、設定済みの項目をエクスポートする機能があるため、それをベースにしましょう。

エクスポート方法

エクスポート画面

グローバルナビゲーションから Architect に移動後、サブナビゲーションの Export をクリックします。エクスポートしたい任意の項目をメインカラムで選択したら、画面右上の Export ボタンをクリックします。

エクスポートされた JSON Data

選択された項目に関する JSON データが表示されます。

この方法で取得した公式デモサイトの JSON データをベースに、ここでは「フィールドグループ(fieldGroups)」「ボリューム(volumes)」「セクション(sections)」に関する設定項目だけを抽出してカスタマイズしています。

インポートの実行

インポート画面

グローバルナビゲーションから Architect に移動後、サブナビゲーションの Import をクリックします。メインカラムのテキストエリアにインポート用の JSON データ(/web/import/plugin/architect.json)の内容をペーストし、画面右上の Import ボタンをクリックします。

インポート結果

すべての項目が問題なくインポートされました。それぞれの一覧画面に項目が追加されていることを確認しましょう。

「フィールド」一覧

「フィールド」一覧

サブナビゲーションのグループが増えています。

「ボリューム」一覧

「ボリューム」一覧

「セクション」一覧

「セクション」一覧

新しいセクションにあわせて、入力タイプも追加されています。

まとめ

ここでは Architect プラグインを利用して、複数のセクションを一括登録する方法について解説しました。

Craft 3.1 で Project Config と呼ばれるプロジェクトの設定を YAML 形式の設定ファイルで異なる環境に同期する機能が追加されるため、実際の利用機会は減少するかもしれませんが、効率的に設定を行う方法の一つとして覚えておくとよいでしょう。

次回は「Feild Manager プラグインを利用してフィールドを一括登録する方法」をご紹介します。