我需要删除侧边栏到我的woocommerce商店。 我已经在选项主题和每个类别中尝试了后端,但没有结果。
我也试过了:
1.file wp-template-hooks.php 除去 - > do_action(..
2.file archive-product.php 除去 - > do_action(..
插入主题目录中的function.php和woocommerce目录中的function.php remove_action(' woocommerce_sidebar',' woocommerce_get_sidebar',10);
进入数据库时,有2个表,其中2个字段已序列化,但风险发生了变化。
resulless。
我完成了这些想法。 哪里保存到db侧边栏的可见性?还是变量?
你能帮助我吗?
由于 麦酒
答案 0 :(得分:2)
我只想更新WooCommerce版本3.2.3 - 2017
的这篇文章确定WooCommerce插件包含一个包含所有模板文件的文件夹,如果您想对自定义主题或子主题上的模板进行更改,则需要将所有所需模板复制到根主题文件夹中名为woocommerce的文件夹中。这将覆盖插件模板,并允许覆盖自定义更改的WooCommerce更新。这些模板在评论中包含所有do_actions和hook,因此可以很容易地理解它是如何工作的。
那就是说WooCommerce有钩子允许你添加或删除代码块,你可以在这里查看API Docs。
要删除侧栏,您需要将其添加到主题设置功能
中的functions.php文件中remove_action( 'woocommerce_sidebar', 'woocommerce_get_sidebar', 10 );
答案 1 :(得分:1)
您已经在主题中集成了WooCommerce?
如果没有,请尝试对integration WooCommerce in your theme执行以下三个步骤。
之后,从 your_theme / woocommerce.php
中删除 get_sidebar();对我来说很好。屏幕截图here。
希望它有所帮助。
答案 2 :(得分:1)
请将此代码添加到您的functions.php
let stringFromExampleTuple = example.0 // "hi"
let intFromtExampleTuple = example.1 // 0
答案 3 :(得分:1)
在@ maksim-borodov的答案之后,我想有条件地隐藏侧边栏 ,即仅在“产品”页面上。方法如下:
function remove_wc_sidebar_conditional( $array ) {
// Hide sidebar on product pages by returning false
if ( is_product() )
return false;
// Otherwise, return the original array parameter to keep the sidebar
return $array;
}
add_filter( 'is_active_sidebar', 'remove_wc_sidebar_conditional', 10, 2 );
答案 4 :(得分:0)
这可以通过woocommerce侧边栏插件来完成。如果要通过代码删除,请将此代码添加到functions.php中,
if (!class_exists( 'WooCommerce' ) ) {return;}
if(is_cart() || is_checkout() || is_product() || is_shop() || is_account_page()){
?>
<style type="text/css">
#secondary {
display: none;
}
#primary {
width:100%;
}
</style>
<?php
}
}
答案 5 :(得分:0)
向functions.php添加以下行:
remove_action('woocommerce_sidebar', 'woocommerce_get_sidebar', 10);
答案 6 :(得分:0)
我正在使用 GeneratePress(免费版),所以其他解决方案对我不起作用。
这个页面给了我答案:https://docs.generatepress.com/article/sidebar-layout/#sidebar-filter
add_filter( 'generate_sidebar_layout', function( $layout ) {
// If we are on a woocommerce page, set the sidebar
if ( function_exists( 'is_woocommerce' ) && is_woocommerce() ) {
return 'no-sidebar';
}
// Or else, set the regular layout
return $layout;
} );
答案 7 :(得分:-3)
以下是如何删除侧边栏: -
转到 wp-content / plugins / woocommerce
在文件 single-product.php 中删除以下代码 -
<?php
/**
* woocommerce_sidebar hook
*
* @hooked woocommerce_get_sidebar - 10
*/
do_action('woocommerce_sidebar');
?>
接下来编辑文件 archive-product.php 并删除以下代码 -
<?php
/**
* woocommerce_sidebar hook
*
* @hooked woocommerce_get_sidebar - 10
*/
do_action('woocommerce_sidebar');
?>
(在删除之前提示*,将此页面中的整个代码复制并粘贴到HD上的单独文本文件中......如果出现任何问题,您始终可以将原始代码粘贴回此文件夹中)