WooCommerce显示购物车结帐页上的项目
问题描述:
我在本网站上工作,当时我被要求将购物车项目列表添加到结帐页面。我决定WooCommerce显示购物车结帐页上的项目
[woocommerce_cart]
短代码添加到结帐页面,则
[woocommerce_checkout]
简码以上,并简单地用CSS来隐藏“前往收银台 - >”购物车中的结帐页面上的按钮。
但是,这引发了一个新问题。现在,在结帐页面上选择送货时,默认为购物车页面上的购物车设置了任何送货...即使在结帐页面上选择了新送货。
显然,这不是给车输出添加到结帐页面的方式。
是否有简码只是为了显示购物车项目本身?
什么我需要编辑,显示结帐页面上车的物品?
答
我要回答我的问题,因为我周围一些额外戳解决它。希望它能在以后帮助别人。
我没有找到一个简码,以简单地将车添加到结帐页面的顶部。我不得不直接编辑模板文件。
所以,我复制:
/wp-content/plugins/woocommerce/templates/checkout/form-checkout.php
到:
/wp-content/mytheme/woocommerce/checkout/form-checkout.php
,使我的编辑该文件直接,所以我不会失去他们时WooCommerce升级。我再从复制的表单代码:
/wp-content/plugins/woocommerce/templates/cart/cart.php
我复制到我的主题目录中的文件中粘贴它:
/wp-content/mytheme/woocommerce/checkout/form-checkout.php
,我想出现的形式。
可能有更优雅的方式,但这种固定我的问题。
答
您还可以使用钩这个
// put this in functions.php, it will produce code before the form
add_action('woocommerce_before_checkout_form','show_cart_summary',9);
// gets the cart template and outputs it before the form
function show_cart_summary() {
wc_get_template_part('cart/cart');
}
我已经创建了一个车,part.php模板包含强制的车表,取而代之的是wc_get_template_part代码(“车/车','部分');
答
更简单的方法是将以下代码添加到您的子主题中的functions.php文件中。
这样你就不需要添加任何模板或修改任何核心woocommerce代码。
function remove_cart_collaterals() {
if (is_checkout()) {
remove_action('woocommerce_cart_collaterals', 'woocommerce_cross_sell_display');
remove_action('woocommerce_cart_collaterals', 'woocommerce_cart_totals', 10);
}
}
add_action('wp', 'remove_cart_collaterals');
保存了大量的工作:-D非常感谢你这么做。 – Jack