オリジナルCommerce決済モジュール(Offsite)で決済サーバーへのPOST時のエンコードを変更する方法

カテゴリ Commerce コアバージョン 8.6.x 関連モジュール Commerce Payment Gateway

commerce_xxx.module

function commerce_xxx_form_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id) {
  if (strpos($form_id,'commerce_checkout_flow_multistep_') === 0) {
    if ($form['#step_id'] == 'payment') { // Checkout stepを特定
      if ($buildInfo = $form_state->getBuildInfo()) {
        if (isset($buildInfo['callback_object'])) {
          $callback_object = clone $buildInfo['callback_object'];
          if (method_exists($callback_object, 'getOrder')) {
            if ($order = $callback_object->getOrder()) {
              if ($payment_gateway = $order->get('payment_gateway')) {
                $name = $payment_gateway->getValue();
                if (isset($name[0]['target_id'])) {
                  if ($name[0]['target_id'] == 'xxxxxxxxxxxxx') { // 決済ゲートウェイを特定
                    $form['#attributes']['accept-charset'] = 'xxxxxxx'; // Shift_JIS など
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

OTHER FAQ

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

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

カテゴリ昇順で並び替える Core Ver. 関連モジュール タイトル
テーマ 8.3x Core Twig開発用の設定
テーマ 7.56 field レンダリング配列内に「ラベル非表示」を指定する方法
テーマ 7.34 スマホ、PCおよびアプリを同時に運用可能なおすすめのテーマはありますでしょうか?
テーマ 8.3x Block Cache Theme 管理ページから作成したカスタムブロックを非キャッシュ化する方法
テーマ 8.9.x Twig Twig で 月末日を算出する方法
チューニング 7.26 PHP DrupalはNginxで動く?
ダウンロード 6.x Views Bonus Pack Viewsで表示した内容をCSVダウンロード
タクソノミー 7.15 Taxonomy manager タクソノミーを効率よく管理したい
タクソノミー 7.15 Hirarchical Select タクソノミー(ターム)の選択を楽にできないでしょうか
タクソノミー 7.15 Taxonomy manager タームを他のボキャブラリ配下に移動したい
タクソノミー 7.15 Entity_Trarnslation Taxonomy TaxonomyのEntity Translation
サイト情報 8.9.x api Drupal::request() メモ
サイト情報 8.4x JavaScript JavaScriptに変数を渡す方法
サイトの環境設定 7.23 Image Style 画像スタイルの使い方(Crop)
サイトの環境設定 7.59 さくらのレンタルサーバー php Options さくらのレンタルサーバーで パブリック/プライベートディレクトリにファイルが書き込まれないとき
サイトの環境設定 7.15 Secure Pages Secure Pagesが急に機能しなくなった
サイトの環境設定 8.9.x 編集
サイトの環境設定 7.15 トップ(ホーム)ページを変更するには?
サイトの環境設定 7.38 Views Bulk Operation VBO(Views Bulk Operation)で指定したアクションが表示されない
サイトの環境設定 7.23 Pathauto 自動生成されるURLエイリアスがおかしい

ページ