Woocommerce - 仅在特定页面上启用AJAX添加到购物车按钮

时间:2018-02-22 12:13:21

标签: ajax woocommerce

在我的Woocommerce商店设置中,我检查了选项:

[✓] 成功添加后重定向到购物车页面。

这对99%的店铺来说都是好事。

在单页上(带有自定义模板的自定义页面)我需要启用Ajax功能。

有没有办法在functions.php中完成这项任务?

1 个答案:

答案 0 :(得分:0)

好的,将此代码插入到functions.php中。您必须将变量$ your_ajax_page_slug替换为您希望禁用重定向到购物车功能的页面名称。确保您已在存档上启用AJAX添加到购物车按钮"检查设置。

add_filter( 'woocommerce_get_script_data', 'modify_woocommerce_get_script_data', 20, 2 );

function modify_woocommerce_get_script_data ( $params, $handle ) {
    global $wp;

    $page_slug = '';
    $your_ajax_page_slug = 'your-page-slug';
    $current_url = home_url( $wp->request );

    // Break the URL by the delimiter
    $url_pieces = explode('/', $current_url);

    // Get the page slug
    if( is_array( $url_pieces ) )
        $page_slug = end( $url_pieces );

    if( $handle == 'wc-add-to-cart' && $page_slug == $your_ajax_page_slug ) {
        $params['cart_redirect_after_add'] = false;
    }

    return $params;
}