2023年12月25日
ブロック定義を別スペースへ移行できるインポートプラグイン
メリークリスマス♪
PowerCMS6から入力欄セットの定義や追加をより直感的なインターフェイスで作成することができるフィールドブロックビルダーの機能を搭載しています。そのフィールドブロックビルダーのブロック定義についてスペース間で移行する機能への要望多く頂いており、将来搭載する予定のブロック定義のインポート・エクスポートのプラグインを先行公開します。
動作環境
- PowerCMS 6.1 以上で Field Block Builder プラグインが有効な環境
インストール
下記から Field Block Builder Importer のパッケージをダウンロードし、解凍して生成される FieldBlockBuilderImporter ディレクトリをサーバー上の PowerCMS のプラグインディレクトリへ設置してください。設置後、PowerCMS 管理画面へログインし、システムレベルのプラグイン設定画面に Field Block Builder Importer が表示されていればインストールは完了です。
※2024/05/17 不具合があったため FieldBlockBuilderImporter ファイルを差し替えました。
使い方
ブロック定義の移行は CSV ファイルで使って行い、Field Block Builder Importer プラグインは CSV ファイルのエクスポートもできるので、下記の流れで移行が行えます。
- スペースA のブロック定義の一覧画面で CSV ファイルをダウンロードする
- CSV ファイルを修正する
- スペースB のブロック定義のインポート画面で CSV ファイルをインポートする
CSV ファイルを修正する場合は後述する CSV ファイルのフォーマットを参照して、注意して行ってください。
エクスポート
エクスポートはブロック定義の一覧画面で行えます。任意のブロック定義を選択して、一覧画面の上部、[CSVエクスポート]ボタンをクリックすると CSV ファイルがダウンロードできます。
インポート
インポートは [ブロック定義] のサブメニュー [インポート] の画面で行います。 操作、画面に結果が表示され、結果画面からブロック定義の編集画面へすぐに遷移できます。
CSV ファイルの内容に問題があるなどインポートできなかったものは結果列が「失敗」となりますので「エラー」列の内容を確認してください。
なお、移行したブロック定義の編集画面のテンプレートが修正できない場合、移行したブロック定義の設定・データではなく FieldBlockBuilder の設定が原因です。Field Block Builder のプラグイン設定「記事/ウェブページ編集画面のカスタマイズ」を確認・変更してください。
ブロック定義の更新と追加
インポートのよるブロック定義の更新と追加はブロック定義のベースネーム (basename) を元に行います。インポート先に同じベースネームを持つブロック定義が存在する場合はそのブロック定義を更新し、存在しない場合はブロック定義を追加します。
更新と追加のどちらで行われたかは結果画面の結果列の値で確認できます。
CSV ファイルの修正 / フォーマット
ブロック定義の CSV ファイルを作成・修正する場合は下記の表を参考にしてください。
注意点として、PowerCMS 標準の CSV ファイルを使ったインポート機能ではデータの ID をキーに追加や上書きしますが、ブロック定義はベースネームをキーにするため ID の指定はありません。
カラム名 | 説明 |
---|---|
basename | ブロックのベースネームを指定します。インポート先に同名のベースネームをもつブロック定義が存在する場合、そのブロック定義を上書きします。basename の指定は必須で、ブロックを追加したい場合も指定が必要です。 |
label | ブロックの名前を指定します。 |
field_defs_json | ブロックの設定を JSON 形式で指定します。 この設定を記述・修正することは難しいのでインポート後にブロック定義の編集画面で変更することをおすすめします。 |
use_custom_view_template | 「出力テンプレート」のオン/オフを 1/0 で指定します。
|
view_template | 「出力テンプレート」のテンプレートを記述します。 |
use_custom_edit_template | 「編集画面テンプレート」のオン/オフを指定します。
|
edit_template | 「編集画面テンプレート」のテンプレートを記述します。 |
edit_template_css | 「編集画面CSS」のスタイルシートを記述します。 |
edit_template_js | 「編集画面JavaScript」の JavaScript を指定します。 |
is_only_used_in_sub_blocks | 「サブブロックでのみ使用」のオン/オフを指定します。
|
maximum_usage | 「ブロックの使用回数」の設定を指定します。
|
制限事項
- インポート・エクスポートの操作を行うためには管理者権限が必要です
- 複数のスペースへ同時にインポートできません。スペースごとにインポートしてください。
- 将来、PowerCMS 標準でブロック定義のインポート・エクスポートが可能になる場合、現在から仕様がかわる可能性があります
- プラグインの動作検証は PowerCMS 6.1 で行いました。
- カテゴリー
- PowerCMS 6
コメントを投稿する