[PaaS のみ]{class="badge informative" title="Adobe Commerce on Cloud プロジェクト(Adobeが管理する PaaS インフラストラクチャ)およびオンプレミスプロジェクトにのみ適用されます。"}

構成設定のインポート

WARNING
すべてのMagento CLI コマンドは、​ ファイルシステム所有者によって実行する必要があります。

Commerce 2.2 ​ パイプライン デプロイメントモデル ​を使用して実稼動システムを設定する場合、config.phpおよびenv.phpから​_import_設定をデータベースに取り込む必要があります。
これらの設定には、設定パスと値、web サイト、ストア、ストアビューおよびテーマが含まれます。

web サイト、ストア、ストアビュー、およびテーマを読み込んだ後、製品属性を作成し、実稼動システム上のweb サイト、ストア、ストアビューに適用できます。

INFO
bin/magento app:config:import コマンドは、環境変数に保存されている構成を処理しません。

読み込みコマンド

実稼動システムで、次のコマンドを実行して、設定ファイル(config.phpおよびenv.php)からデータベースにデータをインポートします。

bin/magento app:config:import [-n, --no-interaction]

オプションの[-n, --no-interaction] フラグを使用して、操作なしでデータを読み込みます。

オプションのフラグなしでbin/magento app:config:importを入力した場合は、変更を確認する必要があります。

例えば、設定ファイルに1つの新しいweb サイトと1つの新しいストアが含まれている場合、次のメッセージが表示されます。

These Websites will be created: New Website
These Groups will be created: New Store
Do you want to continue [yes/no]?

インポートを続行するには、yesと入力します。

デプロイメント設定ファイルにインポートするデータが含まれている場合は、次のようなメッセージが表示されます。

Start import:
Some information about importing

デプロイメント設定ファイルに読み込むデータが含まれていない場合は、次のようなメッセージが表示されます。

Start import:
Nothing to import

インポートするもの

次の節では、インポートするデータについて詳しく説明します。

システム設定

Commerceでは、一部の前処理および後処理アクションが必要なため、データベースに読み込む代わりに、config.phpまたはenv.php ファイルのsystem配列内の値を直接使用します。

例えば、設定パス web/secure/base_urlの値は、バックエンドモデルで検証する必要があります。

バックエンドモデル

バックエンドモデルは、システム構成の変更を処理する仕組みです。
バックエンドモジュールは<module_name>/adminhtml/system.xmlで定義します。

すべてのバックエンドモデルは、Magento\Framework\App\Config\Value クラスを拡張する必要があります。

バックエンドモデルを読み込む場合、設定値は保存されません。

web サイト、ストア、ストアグループの設定

次のタイプの設定をインポートします。
(これらの設定はconfig.phpscopes配列下にあります)。

  • websites: web サイト関連の設定
  • groups:関連する設定を保存します
  • stores: ストアビュー関連の設定

上記の設定は、次のモードで読み込むことができます。

  • create: config.phpには、実稼動環境に存在しない新しいエンティティ (websitesgroupsstores)が含まれています
  • update: config.phpには、実稼動環境とは異なるエンティティ (websitesgroupsstores)が含まれています
  • delete: config.phpには、not​に、実稼動環境に存在するエンティティ (websitesgroupsstores)が含まれています
INFO
ストアに関連付けられているルートカテゴリは読み込みません。 Commerce Adminを使用して、ルートカテゴリをストアに関連付ける必要があります。

テーマ設定

テーマの設定には、Commerce システムに登録されているすべてのテーマが含まれます。データは、theme データベース テーブルから直接取得されます。 (テーマ設定はconfig.phpthemes配列にあります)。

テーマデータの構造

配列のキーは完全なテーマパスです:area + theme path

例:frontend/Magento/luma
frontendはエリアで、Magento/lumaはテーマパスです。

配列の値はテーマに関するデータです:コード、タイトル、パス、親ID

完全な例:

'frontend/Magento/luma' =>
   array (
      'parent_id' => 'Magento/blank',
      'theme_path' => 'Magento/luma',
      'theme_title' => 'Magento Luma',
      'is_featured' => '0',
      'area' => 'frontend',
      'type' => '0',
      'code' => 'Magento/luma',
),
INFO
  • テーマ登録。 テーマデータがconfig.phpで定義されていても、テーマのソースコードがファイルシステムに存在しない場合、テーマは無視されます(つまり、登録されません)。
  • テーマ削除。 テーマがconfig.phpに存在しないが、ソースコードがファイルシステムに存在する場合、テーマは削除されません。
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c