【问题标题】:Displaying price only when the variation is selected and discount in percentage relatively to the regular price仅在选择变体时显示价格,并以相对于正常价格的百分比折扣
【发布时间】:2017-11-16 11:51:39
【问题描述】:

我有这个问题。让我展示图片,以便我更好地解释。

选择了变体产品,但由于所有变体的价格相同,因此价格未显示在底部:

选择了变体产品,因为它们在顶部显示的促销价格和选择后的常规促销价格不同:

我需要的是,只有在选择了变体之后,价格才会像第二张图片一样显示在底部,并计算促销变体价格和常规变体价格之间的折扣。在这两种情况下我需要相同的行为。

我已经搜索了很多,但没有任何东西可以解决这种行为。这里有一些非常接近的答案:

【问题讨论】:

    标签: php wordpress woocommerce product price


    【解决方案1】:

    经过一番搜索,这个简单的专用过滤器挂钩 woocommerce_show_variation_price 将完全符合您的期望:

    add_filter( 'woocommerce_show_variation_price', 'filter_show_variation_price', 10, 3 );
    function filter_show_variation_price( $condition, $product, $variation ){
        if( $variation->get_price() === "" ) return false;
        else return true;
    }
    

    代码进入您的活动子主题(或主题)的 function.php 文件或任何插件文件中。

    经过测试并且可以工作...即使所有变体价格都相同,这也会显示所选变体价格...

    【讨论】:

    • 你好。对于延迟报告您的帮助,我感到非常抱歉,我得了几乎致命的流感。所以,它不起作用。我如何调试以查看它发生了什么?并且只在选择了变化后的价格中计算折扣百分比怎么样?
    • @zeYuri 快乐恢复生活!...在这里,您在一个问题中提出 2 个问题...请注意,这不是 StackOverFlow 上的方式。因此,现在我的代码会显示所选的变体价格,即使所有变体的所有价格都相同(“woocommerce_show_variation_price”挂钩专用于 WooCommerce 中的那个)。对于折扣百分比,这应该是您在新问题上提出的另一个问题,我会很高兴地回答。如果代码不适合你,我不知道......对我来说,它就像我以前总是测试我的代码一样工作。
    • 哦,知道了。是的,这很好用。谢谢。我已经提出了另一个问题。这里stackoverflow.com/questions/47530715/…
    猜你喜欢
    • 2018-05-11
    • 1970-01-01
    • 2018-07-06
    • 2019-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多