如何仅在ID为6355的单个结账页面禁用WooCommerce Ajax调用?
解决仅在指定ID结账页面禁用WooCommerce Ajax调用的问题
原代码未添加特定页面ID的判断逻辑,导致全局禁用了相关脚本。要实现仅对ID为6355的结账页面禁用Ajax调用,只需给两个取消脚本的函数加上页面判断条件即可,修改后的代码如下:
add_action( 'wp_enqueue_scripts', 'dequeue_woocommerce_cart_fragments', 11 ); function dequeue_woocommerce_cart_fragments() { // 仅在ID为6355的页面取消wc-cart-fragments脚本 if ( is_page(6355) ) { wp_dequeue_script('wc-cart-fragments'); } } function disable_checkout_script() { // 仅在ID为6355的页面取消wc-checkout脚本 if ( is_page(6355) ) { wp_dequeue_script( 'wc-checkout' ); } } add_action( 'wp_enqueue_scripts', 'disable_checkout_script' );
代码说明
is_page(6355)用于判断当前是否为ID等于6355的页面,只有满足该条件时,才会执行取消脚本的操作。wc-cart-fragments和wc-checkout是WooCommerce负责结账页面Ajax功能的核心脚本,取消加载这两个脚本即可禁用目标页面的Ajax调用。
内容的提问来源于stack exchange,提问作者reza22m
相关产品推荐
相关产品推荐

