在 Woocommerce 存档页面上的产品价格后添加图标

Posted

技术标签:

【中文标题】在 Woocommerce 存档页面上的产品价格后添加图标【英文标题】:Add an icon after product price on Woocommerce archive pages 【发布时间】:2019-08-01 05:24:31 【问题描述】:

我正在尝试在 Woocommerce 中的产品价格之后为商店页面上的特定产品类别添加自定义图标。所以我想在“快速运输”产品类别的所有产品的价格之后添加一个“快速送货卡车”的图标。

我希望它在 wish.com 网站中显示,就像在这个屏幕截图中一样:

这是我尝试过的:

add_filter( 'woocommerce_price_html', 'prepend_append_icon_to_price', 10, 2 );
function prepend_append_icon_to_price( $price, $instance ) 

    if(is_product_category( 'fast-shipping'))      
        $icon = ' <i class="fas fa-shipping-fast"></i> ';
        $price = $icon . $price . $icon;
    
    return $price;

但是在价格之后它不显示任何内容。

任何帮助将不胜感激。

【问题讨论】:

嗨,欢迎来到 Stack Overflow。请编辑问题以包含您的相关代码,因为没有它任何人都无法复制您的情况。另外,请不要一次问多个问题。谢谢。 好的,会的,谢谢! 【参考方案1】:

在属于价格标签之前或之后使用css:

    fa-shipping-fast:before
            content: url(.....);
            width : ....;
            height : ....;
            ....
    

【讨论】:

【参考方案2】:

自 Woocommerce 3 以来,您使用了错误的钩子,并且您的代码中有一些错误。 在右侧价格后显示一个图标,用于“快速发货”产品类别,两种情况:

1) 在所有 Woocommerce 存档页面上:

add_filter( 'woocommerce_get_price_html', 'prepend_append_icon_to_price', 10, 2 );
function prepend_append_icon_to_price( $price, $product ) 

    if( has_term( 'fast-shipping', 'product_cat', $product->get_id() ) && ! is_product() )
        $price .= '<span style="float:right"><i class="fas fa-shipping-fast"></i></span> ';
    
    return $price;

代码进入您的活动子主题(或活动主题)的 function.php 文件中。经过测试并且可以工作。


2) 在特定的 Woocommerce 产品类别存档页面上:

add_filter( 'woocommerce_get_price_html', 'append_icon_after_product_price', 10, 2 );
function append_icon_after_product_price( $price, $product ) 

    if( is_product_category( 'fast-shipping' ) )
        $price .= '<span style="float:right"><i class="fas fa-shipping-fast"></i></span> ';
    
    return $price;

代码进入您的活动子主题(或活动主题)的 function.php 文件中。经过测试并且可以工作。

【讨论】:

这行得通!至少对于简单的产品。有没有办法让它也适用于可变产品?谢谢一百万! @Matt 我已经重新测试了代码,它也适用于我的测试服务器上的可变产品...... 好的.. 我会再看看我的其他代码,看看我是否有什么东西阻止它在可变产品上工作。再次感谢您的帮助!!! 如何编写自定义 css 以将图标定位到最右侧?就像现在一样,图标立即显示在价格之后。 修复了这个问题,必须将 .price 上的 css 设置为 inline-block 并像魅力一样工作!

以上是关于在 Woocommerce 存档页面上的产品价格后添加图标的主要内容,如果未能解决你的问题,请参考以下文章

Woocommerce 可变产品页面上的定位循环输出

单个产品页面上的 Woocommerce 钩子溢出

Woocommerce 产品页面上的 PHP 代码显示不正确的百分比

在 WooCommerce 存档页面上悬停时切换产品图像

php [在存档页面上显示产品尺寸]在存档页面上显示WooCommerce 3.0+产品尺寸,位于产品标题下方。

php [在存档页面上显示产品尺寸]在存档页面上显示WooCommerce 3.0+产品尺寸,位于产品标题下方。