動的クエリとは、明示的なクエリ文字列として提供されるのではなく、Drupalによって動的に作成されるクエリを指します。すべての挿入、更新、削除、マージクエリは動的である必要があります。選択クエリは静的または動的にすることができます。したがって、「動的クエリ」は通常、動的SELECTクエリを指します。
注:selectクエリの使用の90%は静的クエリになります。パフォーマンスが重要なパスでは、パフォーマンス上の理由からselect()の代わりにquery()を使用する必要があります。動的クエリは、クエリの一部が異なる場合(例:コンテキストに応じてWHERE条件を追加する)または変更可能である必要がある場合にのみ使用します。
動的に作成されるすべてのクエリは、対応するデータベース接続オブジェクトから要求されたクエリオブジェクトを使用して作成されます。静的クエリと同様に、圧倒的多数の場合、プロシージャルラッパーをクエリオブジェクトに使用できます。ただし、その後のクエリディレクティブは、クエリオブジェクトに対して呼び出されるメソッドの形式を取ります。
動的選択クエリは、select()メソッドを使用して次のように開始します:
Drupalの「Migrate Drupal」コアモジュールは、DrupalからDrupalへの移行のAPIサポートを提供し、「Migrate Drupal UI」は古いバージョンのDrupalからのアップグレードのためのシンプルなユーザーインターフェースを提供します。
Drupal 6からDrupal 8、およびDrupal 7からDrupal 8へのアップグレードは、単一言語サイトでは安定しています。多言語サイトのアップグレードパスはまだ完了していません。多言語のDrupal 6からDrupal 8へのアップグレードに関する簡単な情報は、多言語Drupal 6からDrupal 8へのアップグレードを参照し、多言語移行の問題のリストは多言語移行メタ問題を参照してください。D6-D8およびD7-D8のアップグレードパスの安定性を確保する方法はいくつかあります。
初期移行を作成する
- 「Drushを使用したアップグレード」セクションで説明されているように、drush migrate-upgrade --configure-onlyを使用して移行を作成します。
- 次のステップが書き込まれるconfig/syncディレクトリがあることを確認してください
- drush config:exportを使用して移行をエクスポートします
- 独自の移行モジュールを作成します
- config/syncディレクトリから新しいカスタムモジュールのconfig/installディレクトリに、使用したいYMLファイルのみをコピーし、必要に応じてuuid値を削除し、id、グループ、ラベル、その他の値を編集します。
Drupal 6から8
アグリゲーターカテゴリ
Drupal 8にはアグリゲーターカテゴリの概念がなくなり、そのためDrupal 8には移行されません。
許可されたプロトコル
Drupal 8では、プロトコルはコンテナパラメーター「filter_protocols」に保存されるようになりました。そのため、「filter_allowed_protocols」変数を変更した場合は、それをservices.ymlファイルに入力してください。
タクソノミー参照フィールドの許可されたボキャブラリ
Drupal 6では、特定のボキャブラリに適用可能なコンテンツタイプのリストはボキャブラリ設定で定義されます。Drupal 8では、許可されたボキャブラリはタクソノミー用語参照フィールドの設定で定義できます。この設定は現在移行されないため、Drupal 8ではすべてのボキャブラリを参照できます。アップグレード後、Drupal 8でタクソノミー用語参照フィールドの設定を手動で編集し、許可されたボキャブラリを選択できます。
Drushは、Drupalのコマンドラインシェルおよびスクリプトインターフェースです。Drushを使用したDrupal 8へのアップグレードは、ブラウザのユーザーインターフェースを使用する代替手段です。Drushを使用したDrupal 8へのアップグレードは、移行を1つずつ実行でき、ロールバックも可能なため、複雑なサイトの移行に非常に役立ちます。
Composerを使用したDrushのインストール
Drupal 8サイトはComposerで構築できます。コンポーザープロジェクトテンプレートとしてdrupal-composer/drupal-projectを使用する場合、プロジェクトのcomposer.jsonファイルに依存関係として指定されているため、Drushが既にあります。
ComposerプロジェクトでDrushが依存関係として指定されていない場合、次のようにコマンドラインからDrushをインストールできます:
開始する前に
アップグレードを開始する前に、このガイドの前のページを読んだことを確認してください:
最新バージョンのDrupal 8を使用していることを確認してください。バージョンはDrupal 8サイトのステータスレポートページ(/admin/reports/status)で確認できます。移行ツールは開発中であるため、最新の移行アップデートを確実に入手するには、Drupalコアのアップデートに注目してください。
このページには、Drupal 8へのアップグレードに関連するDrupal 8コアモジュールと最も重要な追加モジュールのリストが含まれています。
以前のドキュメント:さまざまなサービスからDrupal 7への移行(その一部はDrupal 8でもまだ適用される可能性があります)
コアMigrateモジュール
コア機能の技術ドキュメントについては、Migrate APIの概要を参照してください。
Migrate
Drupal 8への設定とコンテンツの移行のための基本APIを提供します。移行ソースは完全に異なるシステムでもかまいません。
Migrate Drupal
DrupalソースサイトからDrupal 8へ設定とコンテンツを移行するために必要な機能を提供します。
このドキュメントページでは、まもなくDrupal 7からDrupal 11への多言語サイトのアップグレードの概要を紹介します。現在、このページは未完成です。
それまでの間、次のリソースを確認できます: