Commerce決済モジュール設定をJavaScriptにデータに渡す方法

カテゴリ JavaScript コアバージョン 8.5.x 関連モジュール PHP

PHP側で

function MODULE_page_attachments(&$attachments) {
  if ($payment_gateway_storage = \Drupal::service('entity_type.manager')->getStorage('commerce_payment_gateway')) {
    if ($payment_gateways = $payment_gateway_storage->loadMultiple()) {
      foreach ($payment_gateways as $name => $payment_gateway) {
        if (strpos($name, 'MODULE') !== FALSE) {
          if ($configuration = $payment_gateway->get('configuration')) {
            $attachments['#attached']['drupalSettings']['MODULE']['configuration'] = $configuration;
          }
        }
      }
    }
  }
}

JavaScript側で

var configuration = drupalSettings.MODULE.configuration;

OTHER FAQ

Drupal開発・運用の疑問/質問の答えはここに

無料ユーザー登録すると質問できます。

カテゴリ降順で並び替える Core Ver. 関連モジュール タイトル
フォーム 7.15 Webform WebformのEntity Translation
フォーム 7.15 DefaultTextForNode 新しいページの作成方法を一から教えてください
フォーム 7.38 Views Views一覧の絞り込み検索フォームで複数フィールドを対象にしたい
フォーム 7.38 Webform Webformモジュールをアップデートしたら「このフィールドを入力してください」
フォーム 8.9.x api GET/POSTされた情報を得る方法
フォーム 7.43 Webform フォーム関数が実行されるタイミングについて
フォーム 8.9.x Views Views exposed filterのフォームに#default_valueを仕込む方法
フォーム 8.6.x JavaScript 特定のformに動的にJavaScriptをロードする方法
フォーム 7.15 Webform Template Webformを複写したい
フォーム 8.7.x Webform WebformのCheckboxの要素にて表記の変更
フォーム 7.15 Webform Webformで確認画面
フォーム 7.15 Webform Webform - 確認ページの多言語化
フォーム 7.15 system mail()での送信が失敗する
フォーム 8.6.x JavaScript 特定のformにJavaScriptを紐付ける方法
ブロック 7.23 伸縮するfieldsetブロックを追加したい
ブロック 7.15 Views ひとつのViewsをページやブックページ中で再利用する方法は?
メール 7.50 Smtp smtpでGmailアカウントを使いたい
ユーザ 7.34 ip_ranges ログインアタック対策は?
ユーザ 7.44 Password Policy 無効なユーザーを整理したい
ユーザ 7.23 PHP user_load_multiple()の復帰値

ページ