是否在结账页面侧栏中显示WooCommerce迷你工具?那么,如何通过覆盖窗口小部件来确保更新的安全性呢?

时间:2013-07-02 作者:NewUser

在这里提问之前,我想告诉大家,我已经在stackoverflow和wordpress论坛上问过这个问题,但没有得到任何答案。所以我终于来了。

我已安装woocommerce plugin 在我的wordpress 3.5.2. woocommerce一切正常。我制作了一个名为woocommerce的文件夹,并将woocommerce模板文件中的所有文件粘贴到了我的模板文件夹中。但有一件事我完全被卡住了。在woocommerce结账页面中,我想在侧栏中显示购物车总数。但它并没有在那里显示出来。在其他页面中,它运行良好。有人能告诉我这里出了什么问题吗?任何帮助和建议都将不胜感激。谢谢

使现代化

这是侧边栏中woocommerce购物车小部件的屏幕截图,它可以显示在除结帐页面之外的所有页面中。

enter image description here

编辑:
另外,如何使此更改不受更新的影响?

3 个回复
最合适的回答,由SO网友:Nicolai Grossherr 整理而成

购物车小部件未显示,因为它已配置为不显示在cart and checkout page. 如果你想改变这一点,看看class-wc-widget-cart.php, 您可以在这里找到以下行:

if ( is_cart() || is_checkout() ) return;  
将其更改为:

if ( is_cart() ) return;  
在签出页面上显示小部件。

注意:如果在plugins/woocommerce/classes/widgets文件夹中完成,更新时会覆盖此操作。

编辑:如何覆盖小部件并使更改安全更新的其他信息来源:http://www.skyverge.com/blog/overriddin-woocommerce-widgets/ (选项5)

复制class-wc-widget-cart.php;cust_woo_widgets

class Custom_WooCommerce_Widget_Cart extends WooCommerce_Widget_Cart {
  function widget( $args, $instance ) {
// copy the widget function from woocommerce/classes/widgets/class-wc-widget-cart.php
  }
}
将以下代码放入functions.php:

add_action( \'widgets_init\', \'override_woocommerce_widgets\', 15 );
function override_woocommerce_widgets() { 
  if ( class_exists( \'WooCommerce_Widget_Cart\' ) ) {
    unregister_widget( \'WooCommerce_Widget_Cart\' ); 
    include_once( \'cust_woo_widgets/widget-cart.php\' );
    register_widget( \'Custom_WooCommerce_Widget_Cart\' );
  } 
}
注:有关更多信息,请参阅来源;未经测试。

SO网友:Theunis

我在函数中添加了以下代码。php,现在购物车显示在我的所有页面上。

add_filter( \'woocommerce_widget_cart_is_hidden\', \'always_show_cart\', 40, 0 );
function always_show_cart() {
    return false;
}

SO网友:Mubashir

不建议更改插件的核心文件,因为在更新时您所做的更改将丢失。最好使用以下代码在结帐页面的侧栏中显示购物车小部件

add_filter(\'woocommerce_widget_cart_is_hidden\', \'show_cart_on_checkout\');

    function show_cart_on_checkout()
    {
        return is_cart();
    }

结束

相关推荐

如何在u-plugins文件夹中使用WooCommerce?

我不希望客户端错误地停用woocommerce插件。我最近在wordpress中遇到了一个叫做必须使用插件的概念。(http://codex.wordpress.org/Must_Use_Plugins)我只是想知道是否有可能将woocommerce作为必备插件使用。