我想在产品图片上贴一个热贴纸,就像SALE一样。 所以我添加了一个功能,用于在SALE价格下方的添加产品页面中添加复选框。和它的工作正常,现在我想如果管理员检查热产品复选框,所以贴纸应显示在产品图像上。我有一个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 );
}
答案 0 :(得分: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>';
}
}
如果选中该复选框,则会为span
添加hot-product
。现在相应地设计它。