gpt4 book ai didi

php - WooCommerce 添加到购物车后停止重定向

转载 作者:行者123 更新时间:2023-12-02 00:43:30 24 4
gpt4 key购买 nike

我希望在用户点击添加到购物车按钮后完全删除任何重定向。

实际上我没有使用产品页面。
我使用带有产品链接的简单按钮,如下所示:?add-to-cart=492

我的用户将在我的页面上单击多个“添加到购物车”按钮,因此在单击第一个按钮后他不能被重定向到任何页面。

在页面的末尾,他会找到一个用于支付的结账按钮,就是这样。

有什么想法可以实现吗?

谢谢

最佳答案

更新:

例如,您的简单 html“添加到购物车”按钮链接实际上是(href 值):

<a href="http://my-domain.com/site2/?add-to-cart=492" target="_self" class="button white is-larger carrinho">
<span>ESCOLHER PACOTE</span>
</a>

So they are redirected each time to your home page


2 种解决方案:

1) 使用 WooCommerce short code [add-to-cart]这样:**

  • 没有价格:[add_to_cart id="492"show_price="false"]
  • 含价格:[add_to_cart id="492"]

2) 页面文本编辑器中的 Html 代码 - 为了防止重定向href 属性 应该是:

<a href="?add-to-cart=492" class="button white is-larger carrinho">
<span>ESCOLHER PACOTE</span>
</a>

This time your customers will not be redirected as before


结帐按钮

最后,这是一个自定义短代码,它将输出“继续结帐”按钮:

if( !function_exists('proceed_to_checkout_button') ) {
function proceed_to_checkout_button() {

$checkout_url = wc_get_checkout_url();
$button_txt = __('Proceed to checkout', 'woocommerce');

$output = '<div class="wc-proceed-to-checkout">
<a href="'. $checkout_url .'" class="checkout-button button alt wc-forward">
'. $button_txt .'
</a>
</div>';

return $output;
}
add_shortcode( 'checkout_button', 'proceed_to_checkout_button' );
}

代码位于您的事件子主题(或主题)的 function.php 文件中或任何插件文件中。

Usage: just add this to your pages editor: [checkout_button]


原答案:

首先,在 WooCommerce 设置中,您需要:

  • 在添加到购物车按钮上启用 **Ajax(Woocommerce > 设置 > 产品 > 显示)
  • 禁用添加到购物车按钮重定向(Woocommerce > 设置 > 产品 > 显示)

然后您可以使用以下方式添加自定义“继续结帐”按钮:

  • 任何经典的 WordPress 菜单(外观 > 菜单)
  • 在单个产品页面和产品文件中使用自定义代码:
add_action('woocommerce_after_single_product', 'custom_checkout_button', 100);
add_action('woocommerce_after_shop_loop', 'custom_checkout_button', 100);
function custom_checkout_button() {

$checkout_url = wc_get_checkout_url();
$button_txt = __('Proceed to checkout', 'woocommerce');

?>
<div class="wc-proceed-to-checkout">
<a href="<?php echo $checkout_url; ?>" class="checkout-button button alt wc-forward">
<?php echo $button_txt ?>
</a>
</div>
<?php
}

代码位于您的事件子主题(或主题)的 function.php 文件中或任何插件文件中。

“继续结帐”按钮将显示在此页面的底部。


如果您想跳过购物车页面:

add_action('template_redirect', 'skip_cart_page_redirecting_to_checkout');
function skip_cart_page_redirecting_to_checkout() {

// If is cart page and cart is not empty
if( is_cart() && ! WC()->cart->is_empty() )
wp_redirect( wc_get_checkout_url() );
}

代码位于您的事件子主题(或主题)的 function.php 文件中或任何插件文件中。

所有代码都经过测试并且可以正常工作。

关于php - WooCommerce 添加到购物车后停止重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45248283/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com