我正在尝试在首页上特色产品的价格下方添加一行文字。 我已经尝试编辑content-widget-product.php,所以看起来像这样-
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
global $product;
if ( ! is_a( $product, 'WC_Product' ) ) {
return;
}
?>
<li>
<?php do_action( 'woocommerce_widget_product_item_start', $args ); ?>
<a href="<?php echo esc_url( $product->get_permalink() ); ?>">
<?php echo wp_kses_post( $product->get_image() ); ?>
<span class="product-title"><?php echo esc_html( $product->get_name() ); ?></span>
</a>
<?php if ( ! empty( $show_rating ) ) : ?>
<?php echo wp_kses_post( wc_get_rating_html( $product->get_average_rating() ) ); ?>
<?php endif; ?>
<?php echo wp_kses_post( $product->get_price_html() ); ?>
<p class="deliveryline">DELIVERY THROUGHOUT GREATER CAPE TOWN AREA</p>
<?php do_action( 'woocommerce_widget_product_item_end', $args ); ?>
</li>
我添加了“整行交付” ...但是它什么也没做。有人可以告诉我为什么它不起作用。谢谢!
答案 0 :(得分:1)
尝试以下代码,这些代码将仅在主页价格下将自定义文本添加到特色产品的小部件“产品”项中:
add_action( 'woocommerce_widget_product_item_end', 'home_widget_features_products', 10, 1 );
function home_widget_features_products( $args ){
global $product;
// Featured product on home page (when using the loop)
if( $product->is_featured() && is_front_page() )
echo '<p class="deliveryline">' . __("DELIVERY THROUGHOUT GREATER CAPE TOWN AREA", "woocommerce") . '</p>';
}
代码进入您的活动子主题(活动主题)的function.php文件中。经过测试,可以正常工作。
添加:如果您在首页中使用简码,例如:
[products limit="3" columns="3" visibility="featured"]
您将使用以下代码(适用于循环中的产品):
add_action( 'woocommerce_after_shop_loop_item_title', 'home_loop_features_products', 20 );
function home_loop_features_products(){
global $product;
// Featured product on home page (when using the loop)
if( $product->is_featured() && is_front_page() )
echo '<p class="deliveryline">' . __("DELIVERY THROUGHOUT GREATER CAPE TOWN AREA", "woocommerce") . '</p>';
}
代码进入您的活动子主题(活动主题)的function.php文件中。经过测试,可以正常工作。
要在所有产品的所有地方显示此自定义文本 (在所有Woocommerce存档页面中作为商店,并且在所有Woocommerce循环中作为相关产品,加价销售,交叉销售…)
您将使用不带if语句的相同代码:
add_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_products_loop', 20 );
function woocommerce_products_loop(){
global $product;
echo '<p class="deliveryline">' . __("DELIVERY THROUGHOUT GREATER CAPE TOWN AREA", "woocommerce") . '</p>';
}