WooCommerceショップ(ローカルで運営)がありますが、支払いゲートウェイを削除したいと思います。顧客はセントを支払うことなく注文できるはずです。私は彼らに手動で請求書を送ります。
これを無効にする場所が実際には見つかりません。WooCommerceでは標準ではないようです。
バックエンドのすべての支払いゲートウェイを無効にしようとしましたが、1つの支払いゲートウェイを有効のままにしておく必要があります。
前もって感謝します!
テーマのfunctions.phpに次の行を追加するだけです:add_filter('woocommerce_cart_needs_payment', '__return_false');
「代金引換」を有効のままにすると、チェックアウト時に支払いが行われません。 「代金引換」のタイトルとラベルは、「支払い不要」などに簡単に変更できます。
この質問に対する他の回答が対処していないことは、顧客が最終的に請求書を支払う方法が必要であるという事実です。代金引換(ニーズに合わせて名前が変更されました)を使用すると、ユーザーが実際にチェックアウト時に支払う必要がなくなりますが、問題は、代金引換がのみである場合です。 -)支払い方法、それはまだあなたが彼らに請求書を送るときの唯一の支払い方法になります。
ほとんどの場合、カートのチェックアウト時の代金引換と、請求書の別の支払い方法(Stripeなど)のみが必要になると思います。支払方法。
後払いの設定を作成するための完全なワークフローは次のとおりです。
次のフィルターを使用して、_order-pay
_エンドポイント(請求書の支払いに使用されるページ)を使用しているかどうかに基づいてゲートウェイをオンまたはオフにします。
_/**
* Only show Cash on Delivery for checkout, and only Stripe for order-pay
*
* @param array $available_gateways an array of the enabled gateways
* @return array the processed array of enabled gateways
*/
function so1809762_set_gateways_by_context($available_gateways) {
global $woocommerce;
$endpoint = $woocommerce->query->get_current_endpoint();
if ($endpoint == 'order-pay') {
unset($available_gateways['cod']);
} else {
unset($available_gateways['stripe']);
}
return $available_gateways;
}
add_filter( 'woocommerce_available_payment_gateways', 'so1809762_set_gateways_by_context');
_
もちろん、_order-pay
_ページにストライプ以外のゲートウェイを使用している場合は、unset($available_gateways['stripe']);
を適切な配列キーに更新する必要があります。
その後、あなたは行ってもいいはずです!これで、請求書の支払いページを表示しているかどうかに基づいて、サイトにさまざまなゲートウェイが表示されます。
他のオプションは、BACS支払い方法を使用することです。この方法では、後で請求されることをクライアントに説明できます。
BACSの使用時に送信される電子メールに情報を追加することもできます。