在Woocommerce中的购物车和结帐之间添加新的步骤

时间:2018-03-31 16:19:53

标签: php wordpress woocommerce cart hook-woocommerce

有没有办法在WooCommerce中的购物车和结帐之间添加新的一步?

我想在woocommerce

上的购物车和结帐之间添加一个名为(模式)的新步骤

编辑:

我有4个步骤,当我点击按钮进入2步时,它没有,它只是将我重定向到新页面(自定义页面)

enter image description here

1 个答案:

答案 0 :(得分:2)

首先需要在Wordpress中为自定义步骤添加新页面。然后下面的代码将替换购物车页面中的按钮名称和链接。您必须在此代码中设置所需的按钮名称并链接到两个按钮上的自定义页面(购物车页面和Minicart小部件)

// For cart page: replacing proceed to checkout button
add_action( 'woocommerce_proceed_to_checkout', 'change_proceed_to_checkout', 1 );
function change_proceed_to_checkout() {
    remove_action( 'woocommerce_proceed_to_checkout', 'woocommerce_button_proceed_to_checkout', 20 );
    add_action( 'woocommerce_proceed_to_checkout', 'custom_button_proceed_to_custom_page', 20 );
}

// For mini Cart widget: Replace checkout button
add_action( 'woocommerce_widget_shopping_cart_buttons', 'change_widget_shopping_cart_button_view_cart', 1 );
function change_widget_shopping_cart_button_view_cart() {
    remove_action( 'woocommerce_widget_shopping_cart_buttons', 'woocommerce_widget_shopping_cart_proceed_to_checkout', 20 );
    add_action( 'woocommerce_widget_shopping_cart_buttons', 'custom_button_to_custom_page', 20 );
}

// Cart page: Displays the replacement custom button linked to your custom page
function custom_button_proceed_to_custom_page() {
    $button_name = esc_html__( 'Custom page step', 'woocommerce' ); // <== button Name
    $button_link = get_permalink( 168 ); // <== Set here the page ID or use home_url() function
    ?>
    <a href="<?php echo $button_link;?>" class="checkout-button button alt wc-forward">
        <?php echo $button_name; ?>
    </a>
    <?php
}
// Mini cart:  Displays the replacement custom button linked to your custom page
function custom_button_to_custom_page() {
    $button_name = esc_html__( 'Custom page', 'woocommerce' ); // <== button Name
    $button_link = get_permalink( 168 ); // <== Set here the page ID or use home_url() function
    ?>
    <a href="<?php echo $button_link;?>" class="checkout button wc-forward">
        <?php echo $button_name; ?>
    </a>
    <?php
}

代码进入活动子主题(或活动主题)的function.php文件。经过测试并正常工作。

enter image description here

enter image description here