コンテンツの更新をステージングサーバーからライブサーバーに展開しようとしていますが、これを行うための適切な方法を見つけるのが困難です。新しいページ、ページの更新、場合によってはページの削除をデプロイできる必要があります。私たちのサイトでは、bookモジュールも多用しているため、現時点ではDeployモジュールは機能しません。大規模な構造の更新に機能を使用しています。したがって、私たちの懸念は、毎日のコンテンツの更新だけです。
これを実行して本のページを処理できるモジュールはありますか?
[〜#〜] uuid [〜#〜] および ID機能 を使用すると、Nodeを機能にエクスポートできます。あなたが求めているものだけが、データベースをいじる必要がないことを意味します。
node_export および Backup Migrate を試しましたか。両方のモジュールは、Drupalインストール間でコンテンツを移行するために使用されます。ここに データのインポート/エクスポートモジュール間の比較 があると便利です)。
ここではDrupal 6と想定していますが、Bookモジュールで機能するかどうかは個人的にはわかりませんが、 Deployment を調べましたか?
私は実際にフルDBダンプメソッドが好きです。これはスクリプト化でき、多くの場合数秒で完了することができます。 (リビジョンを管理し、キャッシュテーブルなどを除外すると、サイズを大幅に削減できます。)単純なモジュールを作成して、コンテンツ発行者がこのプロセスをトリガーするためのインターフェイスを提供することもできます。
コメントやコンタクトフォームの送信など、ライブサイトのユーザーから受け入れる可能性のあるすべてのコンテンツを考慮する必要があります。ある場合-驚くほど頻繁にない場合があります-コメントのDisqusやリード生成フォームのMarketoなどの外部サービスを使用して、そのような送信を個別のDrupalデータベースに慎重に分離します。は上書きされないか、エクスポート/インポートプロセス中に影響を受けるテーブルを慎重に上書きしないでください。
それを機能させることができるところでは、それは結局最も単純で、最も速く、最も信頼できる方法になるかもしれません。また、ユーザーからの入力を決して受け入れないサイト(外部サービスへの入力を除く)は、はるかに高速で安全なサイトにするための多くの扉を開きます。
Phing を試して、自動的に次のようにすることもできます。
drush fra -y
)本番サーバーは、Featuresコードにある本番設定(ブロック、ビュー、コンテキストなど)を取得します。このアプローチで私が見る問題:
非常に細かいデータベースのエクスポートを行う必要があります。つまり、node、node_revisions、cck、およびmenuテーブルのみを取得します。
最後のポイント(メニューリンク)では、同じURLエイリアスを使用してステージサーバーと製品サーバーの両方にアクセスしない限り、メニュー項目のエントリが異なり、これは深刻な問題になります。