質問: お世話になります。下記エラー状況の解消に向けて、アドバイスをいただければ幸いです。 **【現状と解消したいエラー】** 現在WordPressサイトで「SimpleMembership」プラグインを利用して有料会員サイトを運営しております。 いままでPayPal決済のみで対応していたのですが、決済方法にStripeも導入しようと、 本番WordPressサイト(現在運用している本番ドメイン。仮に「Xサーバー上のhttps://A.com」と呼びます。) と同一サーバー上のテスト環境(仮に「Xサーバー上のhttps://B.com」と呼びます。現在は運用していない別ドメインを使っています。)で以下の状況下で動作テストをしました。 結果、「Xサーバー上のhttps://B.com」では正常に動きました。 ・同一テーマ(TCD AVANT) ・同一プラグイン(設定も同じ) ・同一サーバー(Xサーバー) ところが、いざ本番の「Xサーバー上のhttps://A.com」に実装しようと 非公開ページに同一設定で決済ボタンを設置したところ、 「購入する」ボタンを押すと、以下のエラー画面に遷移してしまいます。 > > Error occurred: No API key provided. (HINT: set your API key using "Stripe::setApiKey()". You can generate API keys from the Stripe web interface. See https://stripe.com/api for details, or email support@stripe.com if you have any questions. > > > エラーが発生しました:APIキーが提供されていません。 (ヒント:「Stripe :: setApiKey()」を使用してAPIキーを設定します。StripeWebインターフェイスからAPIキーを生成できます。詳細についてはhttps://stripe.com/apiを参照するか、support @に電子メールを送信してください。ご不明な点がございましたら、stripe.comをご覧ください。 > > > ちなみに、Stripeのサポートセンターにも問い合わせましたが、Stripe側には問題はなく、WordPress側は調べられないため解決できませんでした。 また、今回WordPressサイトとの接続を確認したStripe環境は「テストモードのみ」です。(Live環境では試していません) **【現在確認できている状況(プラグインから出力されるはずのStripe('')の値が取得できていない)】** まず、凡ミスを疑ってAPIキーは何度もテスト環境と同一だということを確認しました。 よって、入力ミスなどAPIキー設定が間違っているということではありませんでした。 そこで、 エラーが出てしまうサイトの決済ボタン配置ページのHTMLを確認したところ、以下の部分が空欄になってしまっていることが確認できました。 ``` コード
回答: ▼SimpleMembershipの決済ボタンがStripeのテスト用キーを使用しているにもかかわらず、 ▼SimpleMembershipのSandboxがOFFの状態(Enable Sandbox Testingのチェックが外れている)だったことが原因 でした。 私の設定項目に対する理解不足でした。 WAFの可能性をご指摘いただいたyuki84web様、 的確に見直しポイントをご指南いたいたtabuu様、ありがとうございました。