Php wooCommerce ajax提交到同一签出页面无效

Php wooCommerce ajax提交到同一签出页面无效,php,ajax,wordpress,woocommerce,checkout,Php,Ajax,Wordpress,Woocommerce,Checkout,将wooCommerce更新到最新版本后,签出页面https://my_website.com/checkout/现在不会提交到同一页面(即/checkout/页面),而是提交到根url(https://my_website.com/?wc-ajax=签出) 下订单时是否有可能的解决方法或解决方案,以恢复将订单提交给以下机构的原始行为: (https://my_website.com/checkout/?wc-ajax=checkout)?结果表明,该问题是由wooCommerce最新版本中最近

将wooCommerce更新到最新版本后,签出页面
https://my_website.com/checkout/
现在不会提交到同一页面(即
/checkout/
页面),而是提交到根url
(https://my_website.com/?wc-ajax=签出)

下订单时是否有可能的解决方法或解决方案,以恢复将订单提交给以下机构的原始行为:
(https://my_website.com/checkout/?wc-ajax=checkout)

结果表明,该问题是由wooCommerce最新版本中最近的一项更改引起的,该更改是通过对商店中的所有ajax请求使用
主页

解决方法

通过更改
includes/class wc ajax.php
文件(在
get_endpoint
函数中)中的第35行来恢复以前的实现:


您可以使用名为
woocommerce\u ajax\u get\u endpoint
的过滤器来实现这一点,而不是编辑源代码

这对我很有用:

function filter_woocommerce_ajax_get_endpoint( $add_query_arg, $request ) { 
    return add_query_arg( 'wc-ajax', $request, remove_query_arg( array( 'remove_item', 'add-to-cart', 'added-to-cart', 'order_again', '_wpnonce' ), home_url( 'NEW URL', 'relative' ) ) );
}; 

add_filter( 'woocommerce_ajax_get_endpoint', 'filter_woocommerce_ajax_get_endpoint', 10, 2 );
function filter_woocommerce_ajax_get_endpoint( $add_query_arg, $request ) { 
    return add_query_arg( 'wc-ajax', $request, remove_query_arg( array( 'remove_item', 'add-to-cart', 'added-to-cart', 'order_again', '_wpnonce' ), home_url( 'NEW URL', 'relative' ) ) );
}; 

add_filter( 'woocommerce_ajax_get_endpoint', 'filter_woocommerce_ajax_get_endpoint', 10, 2 );