gpt4 book ai didi

wordpress - 如何在 WooCommerce 中使用自定义订单状态获取立即付款 URL?

转载 作者:行者123 更新时间:2023-12-03 23:14:31 24 4
gpt4 key购买 nike

我想从客户可以直接支付发票的地方获取 URL,并且它应该与 wc-cancelled 一起使用。和 wc-transaction-declined (自定义订单状态)。
我的解决方案
我现在正在做的是使用我的自定义获取参数创建一个自定义页面,并将整个付款流程作为网关提供商网站中的文档进行处理。
我的问题
但问题是每当他们更新他们的 doc 文件和插件时,我也必须更新我的代码;但是如果我得到了 Pay Now URL 那么 WooCommerce 和 Gateway Plugin 会处理它。
有更好的解决方案吗?

最佳答案

我在 WooCommerce 中得到了解决方案 templates/emails/customer-invoice.php文件。我正在寻找的功能是 get_checkout_payment_url() .

用法

$order = wc_get_order($order_id);
$pay_now_url = esc_url( $order->get_checkout_payment_url() );
echo $pay_now_url; //http://example.com/checkout/order-pay/{order_id}?pay_for_order=true&key={order_key}
//http://example.com will be site_url and protocol will depending upon SSL checkout WooCommerce setting.

但是这个网址只适用于 pending , failed订单状态;所以我使用了过滤器 woocommerce_valid_order_statuses_for_payment
if (!function_exists('filter_woocommerce_valid_order_statuses_for_payment')) {
//http://woocommerce.wp-a2z.org/oik_api/wc_abstract_orderneeds_payment/
//http://hookr.io/filters/woocommerce_valid_order_statuses_for_payment/
// define the woocommerce_valid_order_statuses_for_payment callback 
function filter_woocommerce_valid_order_statuses_for_payment( $array, $instance ) {
$my_order_status = array('cancelled', 'transaction-declined');
return array_merge($array, $my_order_status);
}
// add the filter 
add_filter('woocommerce_valid_order_statuses_for_payment', 'filter_woocommerce_valid_order_statuses_for_payment', 10, 2);
}

^^ 我在我的事件主题 functions.php 中添加了这个文件。

引用:
  • get_checkout_payment_url()
  • wc_abstract_orderneeds_payment
  • woocommerce_valid_order_statuses_for_payment
  • 关于wordpress - 如何在 WooCommerce 中使用自定义订单状态获取立即付款 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40880509/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com