目标结帐页面但不是 Woocommerce 中的订单接收页面
Target checkout page but not order-received page in Woocommerce
我在 functions.php
中以这种方式链接一些 .js:
if(get_query_var('pagename')==='checkout') {
wp_enqueue_script('script', 'my.js', array('jquery'), 1.1, true);
}
my.js
是我检查一些结帐表单输入字段的地方。
现在我看到 my.js
也在订单接收页面中链接(我知道这是结帐页面的 'sub-page'!),这会导致一些错误,因为结帐表格不存在没有了。
如何在结帐页面有条件地执行一些代码,而不是在收到订单的页面中?
谢谢。
尝试使用 is_checkout_pay_page() 函数:
if(is_checkout_pay_page()) {
wp_enqueue_script('script', 'my.js', array('jquery'), 1.1, true);
}
要定位结帐页面 避免 "order-received" 或 "order-pay" 端点 使用:
if( is_checkout() && ! ( is_wc_endpoint_url( 'order-pay' ) || is_wc_endpoint_url( 'order-received' ) ) ) {
wp_enqueue_script('script', 'my.js', array('jquery'), 1.1, true);
}
经过测试并可以正常工作。
我在 functions.php
中以这种方式链接一些 .js:
if(get_query_var('pagename')==='checkout') {
wp_enqueue_script('script', 'my.js', array('jquery'), 1.1, true);
}
my.js
是我检查一些结帐表单输入字段的地方。
现在我看到 my.js
也在订单接收页面中链接(我知道这是结帐页面的 'sub-page'!),这会导致一些错误,因为结帐表格不存在没有了。
如何在结帐页面有条件地执行一些代码,而不是在收到订单的页面中?
谢谢。
尝试使用 is_checkout_pay_page() 函数:
if(is_checkout_pay_page()) {
wp_enqueue_script('script', 'my.js', array('jquery'), 1.1, true);
}
要定位结帐页面 避免 "order-received" 或 "order-pay" 端点 使用:
if( is_checkout() && ! ( is_wc_endpoint_url( 'order-pay' ) || is_wc_endpoint_url( 'order-received' ) ) ) {
wp_enqueue_script('script', 'my.js', array('jquery'), 1.1, true);
}
经过测试并可以正常工作。