微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

删除项目时购物车页面为空

如何解决删除项目时购物车页面为空

当购物车为空时,我想为购物车页面设计我自己的模板。我添加了以下代码片段来完成。

add_action( 'woocommerce_cart_is_empty','custom_empty_cart_message',10 );
remove_action( 'woocommerce_cart_is_empty','wc_empty_cart_message',10 ); 

remove_action( 'woocommerce_cart_item_removed','action_woocommerce_cart_item_removed',10); 
add_action( 'woocommerce_cart_item_removed',10);

function custom_empty_cart_message() {
    $html  = '<a href="http://abcd.com/wp-content/lo.png"><img class="size-medium wp-image-25512 aligncenter" src="http://abcd.com/wp-content/lo.png" alt="" width="300" height="169" /></a>';
    $html .= wp_kses_post( apply_filters( 'wc_empty_cart_message',__( '<p style="text-align: center;"><B>Your Shopping Cart Looks Empty</B></p><p style="text-align: center;">Your shopping cart is waiting</br>Give it purpose</p>','woocommerce' ) ) );
    echo $html . '</p></div>';
}

现在发生的事情是,当您直接访问购物车页面时它工作正常。除非将商品添加到购物车 -> 访问购物车页面 -> 删除添加的商品会显示一个空白页面,而不是我创建的自定义方法。然后如果页面刷新,它工作正常自定义方法加载完美。为什么会发生这种情况?为什么删除项目后我会看到一个空白页面

提前干杯。

解决方法

发现了。

解决方案是您必须使用cart-empty 类以及您的方法,如下所示。

remove_action( 'woocommerce_cart_is_empty','wc_empty_cart_message',10 );
add_action( 'woocommerce_cart_is_empty','custom_empty_cart_message',10 );

function custom_empty_cart_message() { ?>
    <div class="col-12 offset-md-1 col-md-10">
        <div class="cart-empty">

        <a href="http://abcd.com/wp-content/lo.png"><img class="size-medium wp-image-25512 aligncenter" src="http://abcd.com/wp-content/lo.png" alt="" width="300" height="169" /></a>
        <p style="text-align: center; font-weight: bold;">Your Shopping Cart Looks Empty</p>
        <p style="text-align: center;">Your shopping cart is waiting</br>Give it purpose</p>
    </div>
</div>
<?php
}

愉快的定制。

,

WooCommerce 中有这个文件 wp-content/plugins/woocommerce/templates/cart/cart-empty.php

您可以在您的主题中复制此页面(带有文件夹结构),并且您应该可以对其进行自定义!

看看https://docs.woocommerce.com/document/template-structure/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。