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.昇順で並び替える 関連モジュール タイトル
フォーム 8.6.x JavaScript 特定のformにJavaScriptを紐付ける方法
Commerce2 8.6.x Commerce Order Commerceで注文情報から全Itemを得る方法
コンテンツの管理 8.6.x Commerce Commerce orderからすべての商品名を取得する方法
JavaScript 8.5.x PHP Commerce決済モジュール設定をJavaScriptにデータに渡す方法
Libraries 8.5.x Libraries Commerceで外部JavaScriptをテスト/本番で読み分ける方法
コンテンツの管理 8.5.x Field File コンテンツのフィールドの表示について
コンテンツの管理 8.4x Entity EntityをPropertyで探す(クエリする)方法
テーマ 8.4x hook_preprocess_html bodyタグにnode idやaliasのClassを追加する方法
コンテンツの作成 8.4x コンテンツ作成時のフォームレイアウトの変更
コンテンツの作成 8.4x PhpSpreadsheet Excelを読み書きする方法
Views 8.4x hook_views_query_alter Viewsクエリに多くの条件を追加する方法
Views Exposed Filter 8.4x hook_views_pre_view Views Exposed Formの複数単語入力(textfield)をフォーム上だけ複数行入力(textarea)にする方法
SFTP 8.4x SFTP RSA SFTP(RSA)でファイル転送(送信)する方法
サイト情報 8.4x JavaScript JavaScriptに変数を渡す方法
Token 8.4x Token カスタムモジュールからtokenを提供する方法(drupal8版)
コンテンツの作成 8.4x Download とにかく何でもコンテンツをダウンロードさせる方法
コンテンツの作成 8.4x node 新規ノードを作成する
Views 8.4x hook_views_query_alter 現在のViewsクエリを保存・再現する方法
コンテンツの管理 8.4x Action カスタムアクションを作成する方法
Viewsプログラミング 8.4x Views drupal8におけるViewsプログラミング

ページ