Вы используете неправильный хук, начиная с 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 вашей активной дочерней темы (или активной темы),Проверено и работает.