logo

Palette - Make it Colorful🎨

Palette - Visual Page Builder, no design degree required.

Live Demo Download Palette

Scroll

ローカルサイトから本番へPaletteページをエクスポート/インポートする⚡

Paletteを使えばページを視覚的に組み立てられますが、そのページを別のサイトへ移動するのは、単にテキストをコピーするだけでは済みません。ページはメディアや画像ファイル、そしてそれが構築された正確なコンポーネントバージョンを参照します。Palette Proはそのすべてを1つのバンドルにまとめるので、ページはピクセル単位で完璧なコピーとして本番に届きます。

このチュートリアルでは、ローカルサイト(drupalbook.local)に、すべてのQuote Sliderスタイルを表示するデモページを作成し、それをエクスポートして本番サイト(drupalbook.org)にインポートします。

移動するページ

このページには、項目スタイルごとに1つずつ、5つのQuote Sliderが積み重ねられています —PersonaCompanyPersona with small iconWith square image、そしてWith frame and background image。各スライダーには3つの推薦文が含まれています。

Quote Slider, Persona style: eyebrow, title, avatar, quote and author.
Personaスタイル — 丸い著者アバターを備えたすっきりした推薦文。
Quote Slider, With square image style: large portrait with accent circle and dotted pattern.
With square imageスタイル — アクセント図形を用いたエディトリアルなレイアウト。
Quote Slider, Company style.
Companyスタイル
Quote Slider, With frame and background image style.
With frame and background imageスタイル

始める前に

両方のサイトが一致している必要があります Palette Proはページが固定するコンポーネントのスキーマを運びますが、コンポーネントのコードは運びません。そのため、ローカルと本番のサイトには次が必要です:

  • 同じモジュールが有効:canvascanvas_palettepalette_pro
  • 同じバージョンのコンポーネントプロバイダー(canvas_palette/独自コンポーネント)。これによりページが同一にレンダリングされます。
  • コアのmediaが有効(Palette Proの依存関係)。

ステップ1 ローカルサイトでページをエクスポートする

バンドルを生成する方法は2つあります。どちらも同じ.jsonファイルを作成します。

オプションA — Canvasエディタから

ページをCanvasエディタで開きます。左サイドメニューでPaletteボタン(パレットアイコン)をクリックし、「Export」を選択します。ブラウザがcanvas-page-<id>.json(完全なバンドル)をダウンロードします。

Canvas editor with the Palette side-menu button open, showing Export and Import.
Palette → Exportメニュー(Canvasエディタ内)。同じメニューには「Import」もあります。

オプションB — コマンドライン(Drush)から

スクリプト化やエアギャップ環境での移動に便利です。サイトルートで実行します。ページIDはContent → PagesまたはエディタのURLで確認できます。

# On the LOCAL site (drupalbook.local)
drush palette-sync:export 5 --out=quote-slider.json
# [OK] Exported page 5 "Quote Slider — all styles": 20 components, 3 media, 3 files -> quote-slider.json

バンドルの中身

標準のCanvas CLIと異なり、Palette Proのバンドルは自己完結型です。すべてがUUIDで照合されるため、再インポートは重複を作らずその場で更新します。

パート運ぶ内容
ページタイトル、ステータス、URLエイリアス、コンポーネントツリー(メディア参照はUUIDでトークン化)。
コンポーネントバージョンページが固定する各コンポーネントバージョンの正確なスキーマ。
メディア参照されているすべてのメディアエンティティ。
ファイル参照されているすべてのファイルとその生バイトデータ — 別途ファイルをコピーする必要はありません。

ステップ2 本番でページをインポートする

quote-slider.jsonを本番サーバーにコピーします(またはエディタからアップロードするために手元に用意します)。その後、drupalbook.orgでインポートします。

オプションA — Canvasエディタから

本番のCanvasエディタで任意のページを開き、Paletteボタンをクリックして「Import」を選択します(上のメニュー参照)。.jsonファイルを選ぶと、Palette Proがファイル・メディア・コンポーネントバージョン・ページを再作成し、インポートしたページをエディタで開きます。

オプションB — コマンドライン(Drush)から

# On PRODUCTION (drupalbook.org)
drush palette-sync:import quote-slider.json
# [OK] Imported page "Quote Slider — all styles" as canvas_page/12 (created): 3 new media, 3 new files.

# Re-running updates the same page in place (matched by UUID). Use --new to fork a fresh copy:
drush palette-sync:import quote-slider.json --new

オプションC — チャンネル経由でプルする(ファイル移動不要)

Palette Proは、本番をソースサイトへ直接接続することもできます。ソースでチャンネル設定を開き、保護方法(トークンまたはHTTP Basic認証)を選択します。

Palette Sync channel settings page with authentication options.
Configuration → Web services → Palette Sync channel — ソースサイトのページを公開します。

デスティネーションで、ソースを指すリモートを追加し、「Pull pages」を使用します。ソースのページがページネーション付きで一覧表示され、それぞれにNew / Needs update / Syncedバッジが付くので、必要なものをプルします。

Palette Sync remotes admin listing.
Configuration → Web services → Palette Sync remotes — ソースに接続してページをプルします。

ステップ3 本番で確認する

  1. キャッシュを再構築します: drush cr
  2. エイリアス(/quote-slider-styles)でページを開き、すべてのスライダー・画像・スタイルがレンダリングされることを確認します。
  3. Quote Sliderを開いて著者画像が表示されることを確認します。これは、ファイル→メディア→ツリーの再マッピングが最後まで機能したことの証明です。
完了 5つのQuote Sliderスタイルが、ローカルとまったく同じように本番でレンダリングされます。コンポーネントツリー、固定バージョン、メディア、ファイルはすべて引き継がれています。

注意点と落とし穴

コンポーネントバージョンを揃える 本番がローカルと異なるバージョンのコンポーネントを実行している場合、ページはインポートされますがピクセル単位で同一に見えないことがあります。両サイドのモジュールバージョンを揃えてください。
  • UUIDによる冪等性。 同じファイルを2回インポートしても、ページ・メディア・ファイルは更新されるだけで重複しません。ローカルで編集し、再エクスポート・再インポートすれば、本番が収束します。
  • バンドル形式。 バンドルにはpalette_pro:1というタグが付きます。読み取るには、両サイトが対応するPalette Proを実行している必要があります。
  • 不足しているコンポーネント。 ページ内のコンポーネントが本番にインストールされていない場合、インポートは警告をログに記録し、その部分はレンダリングされないことがあります。プロバイダーモジュールをインストールして再インポートしてください。

スクリーンショットはローカルサイト(drupalbook.local)で取得したものです。CanvasエディタとPalette Sync UIは本番でも同一です。