我一直在拼命寻求帮助。我真的很想从我的woocommerce商店基页中删除侧边栏。在我的主题的管理选项中,可以在产品页面上启用侧边栏,但是您选择的内容不仅会影响商店基页,还会影响所有存档页面。
在archive-product.php文件中,有一些代码可以根据是否启用该按钮来控制布局,所以我认为我最好的选择是使用if else语句来说明它是否是商店页面,使用'否-sidebar'类。这就是我想出来的,但它不起作用。任何想法都会很棒。
<?php if ( is_object( $shop_page) ) : ?>
<div id="default_products_page_container" class="no-sidebar">
<?php elseif (have_posts() ) : ?>
<div id"default_products_page_container" class="with-sidebar">
答案 0 :(得分:6)
在您孩子主题的functions.php中:
// remove sidebar for woocommerce pages
add_action( 'get_header', 'remove_storefront_sidebar' );
function remove_storefront_sidebar() {
if ( is_shop() ) {
remove_action( 'storefront_sidebar', 'storefront_get_sidebar', 10 );
}
}
在css中,您必须将内容类更改为100%宽度,对于我的主题:
.post-type-archive-product .content-area {
float: left;
margin-left: 0;
margin-right: 0;
width: 100%;
}
答案 1 :(得分:1)
要从商店页面中移除侧边栏,您要在 function.php 文件中使用操作挂钩 -
add_action('woocommerce_before_main_content', 'remove_sidebar' );
function remove_sidebar()
{
if ( is_shop() ) {
remove_action( 'woocommerce_sidebar', 'woocommerce_get_sidebar', 10);
}
}
在这里你可以获得WooCommerce Action和Filter Hook - https://docs.woothemes.com/wc-apidocs/hook-docs.html
答案 2 :(得分:0)
也许请查看您正在使用的主题,并从模板中删除侧边栏的代码。
答案 3 :(得分:0)
删除侧边栏,使页面全宽。这个工作示例是正确的方法。
1-ID #secondary
是侧边栏ID。将样式应用于#primary width:100%;
2-第if(is_cart() || is_checkout() || is_product())
行分别从购物车页面,结帐页面和产品页面删除了侧边栏。
add_action('wp_head', 'hide_sidebar' );
function hide_sidebar(){
if(is_cart() || is_checkout() || is_product()){
?>
<style type="text/css">
#secondary {
display: none;
}
#primary {
width:100%;
}
</style>
<?php
}
}