Yaz*_*min 6 php wordpress shortcode woocommerce
我正在这个网站上工作,我被要求在结帐页面添加购物车项目列表.我决定添加
[woocommerce_cart]
Run Code Online (Sandbox Code Playgroud)
短信代码到结帐页面上方
[woocommerce_checkout]
Run Code Online (Sandbox Code Playgroud)
短代码,只需使用CSS隐藏结帐页面上购物车中的"继续结帐 - >"按钮.
但是,这引入了一个新问题.现在,当在Checkout页面上选择装运时,它默认为在Cart页面上为购物车设置的任何装运...即使在结帐页面上选择了新装运.
显然,这不是将购物车输出添加到结帐页面的方法.
是否有一个短代码只是为了显示购物车物品本身?
我需要编辑什么才能在结帐页面上显示购物车项目?
Yaz*_*min 16
我将回答我自己的问题,因为我解决了一些额外的问题.希望它能在以后帮助别人.
我没有找到简短的代码,只需将购物车添加到结帐页面的顶部即可.我必须直接编辑模板文件.
所以,我复制了:
/wp-content/plugins/woocommerce/templates/checkout/form-checkout.php
Run Code Online (Sandbox Code Playgroud)
至:
/wp-content/mytheme/woocommerce/checkout/form-checkout.php
Run Code Online (Sandbox Code Playgroud)
直接对该文件进行编辑,以便在升级WooCommerce时不会丢失它们.然后我复制了以下表单代码:
/wp-content/plugins/woocommerce/templates/cart/cart.php
Run Code Online (Sandbox Code Playgroud)
并将其粘贴到我复制到我的主题目录的文件中:
/wp-content/mytheme/woocommerce/checkout/form-checkout.php
Run Code Online (Sandbox Code Playgroud)
在哪里我希望表单出现.
可能有更优雅的方式,但这解决了我的问题.
您也可以为此使用钩子
// 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' );
}
Run Code Online (Sandbox Code Playgroud)
我创建了一个包含购物车表的cart-part.php模板,并用wc_get_template_part( 'cart/cart','part' );替换了代码。