Featuresを使ったコンテンツデータ移行

Featuresモジュールを使ったコンテンツ移行

参考にしたサイト http://www.batdesign.net/matt/notes/using-features-export-content

Drupal 7で使用するモジュール モジュールごとに必須モジュールをインストール

たとえば、開発サーバから公開サーバへコンテンツタイプをそっくり移行したい場合

開発サーバ側
  • Features モジュールをインストール

Featuresモジュールでコンテンツタイプをデータと一緒に移行する

  • UUIDモジュールをインストール

Featuresでコンテンツタイプを移行 UUIDモジュールをインストール

標準インストール後に、念のために、UUID Features、UUID Pathなどを有効にする「Create missing UUIDs」 をクリック

  • Node Exportモジュールをインストール

Features  Node Exportモジュールをインストール

エクスポートとインポートの環境を調整する、ファイルやフィールド構成など。

たとえば、もし、エクスポートしたコンテンツのURLエイリアスを、インポートした時に同じに設定したい場合は、インポート側のNode Exportの管理画面 環境設定 -> コンテンツ作成 -> Node export -> Reset Values on Import でコンテンツタイプごとにURL pathの設定をチェックOFFにする。

標準インストール後にNode export features、必用に応じて Node export dependency, Rest Values on Import, Node export relations などを有効にする。

  • Featuresでエクスポートするデータを作成

Create Featureを選択し、コンテンツタイプや必用なコンポーネントを指定

Features Create Feature

バージョンは、Featuresのバージョンを指定します。「Download feature」をクリックして、xxxx.tar ファイルを保存します。

そのTARファイルを移行先サーバの、featuresでGeneral export path で指定したディレクトリ、デフォルトは sites/all/modules にコピーし、解凍して、featuresモジュールで認識させます。

Node Exportでコンテンツを指定することもできます。

  • Node Export

アドミン環境のコンテンツ管理画面でコンテンツタイプを指定して、更新オプション「Node Export」を選択し、エクスポートするコンテンツを選択し、「更新」をクリック

features Node Export

「Download file」をクリックして、node-export_xxxxx.export ファイルを保存

Features Node Export

保存したエクスポートファイルを、公開用サーバで、モジュールをインポートして、最後に、管理画面の「コンテンツ追加」で、「Node export: import」を選択してエキスポートファイルをインポートします。詳細は公開用サーバの説明で。

 

移行先の公開用サーバ側

Features, UUID, Node export などをインストールする

Sites/all/modules に移行元のFeaturesのtarファイルがあり、解凍する。その後、そのFeatureが認識され、「設定の保存」をクリックし、認識させます。以下の例はfeatures-test2 を読み込み設定保存した場合

Features 公開用サーバ

もし、データ構造を再定義や変更したい場合は、Manageの画面でrecreateし、データ構造を確認します。

Node Exportで出力したエクスポートファイルを、管理画面->コンテンツの追加->Node export:import を選択し、アップロードします。

コンテンツが追加されます。

Features Node Export Import

 

 

 

 

タグ: 

CMS: