如何在 Woocommerce 中的产品图片上添加热门属性(如销售)

Posted

技术标签:

【中文标题】如何在 Woocommerce 中的产品图片上添加热门属性(如销售)【英文标题】:how to add Hot attribute like sale on product image in Woocommerce 【发布时间】:2014-12-23 00:24:22 【问题描述】:

我想在产品图片上贴上热贴,就像销售一样。 所以我在销售价格下方的添加产品页面中添加了一个添加复选框的功能。并且它工作正常,现在我想如果管理员检查了热门产品复选框,那么贴纸应该显示在产品图片上。我有一个 CSS 类“热门产品”。如果管理员选中热门产品复选框,我如何在产品图片上添加此类

这是我在售价下方添加复选框的功能。

/ Display Fields
add_action( 'woocommerce_product_options_general_product_data', 'woo_add_custom_general_field' );

// Save Fields
add_action( 'woocommerce_process_product_meta', 'woo_add_custom_general_fields_save' );


function woo_add_custom_general_field() 

 global $woocommerce, $post;

 echo '<div class="options_group">';

 // Checkbox
 woocommerce_wp_checkbox( 
array( 
'id'            => '_checkbox', 
'wrapper_class' => 'show_if_simple', 
'label'         => __('HOT Product', 'woocommerce' ), 
'description'   => __( 'Check for Hot Product', 'woocommerce' )
)
);

echo '</div>';



function woo_add_custom_general_fields_save( $post_id )

  $woocommerce_checkbox = isset( $_POST['_checkbox'] ) ? 'yes' : 'no';
  update_post_meta( $post_id, '_checkbox', $woocommerce_checkbox );

【问题讨论】:

【参考方案1】:

您的上述工作正常。现在你需要在前端显示。 试试这个代码:

add_action('woocommerce_before_single_product_summary','custom_hot_product');
function custom_hot_product()
  global $product;
  $is_hot = get_post_meta( $product->id, '_checkbox', true );
  if ( 'yes' == $is_hot ) 
    echo '<span class="hot-product"></span>';
  

如果选中该复选框,这将添加一个 spanhot-product。现在相应地设置它的样式。

【讨论】:

以上是关于如何在 Woocommerce 中的产品图片上添加热门属性(如销售)的主要内容,如果未能解决你的问题,请参考以下文章

如何删除 WooCommerce 商店图片?

如何获取 Woocommerce 产品库图片 URL? [关闭]

在 Woocommerce 中的产品自定义循环上启用 Ajax 添加到购物车按钮

在 WooCommerce 单一产品页面上为特定产品添加自定义内容

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

在菜单和Woocommerce产品页面上的内容之间添加空格?