2014-10-27 32 views
1

我想要一个产品图像上的热贴纸,就像SALE一样。 所以我添加了一个函数添加复选框添加产品页面下面的销售价格。和它的工作正常,现在我想如果管理员检查了热门产品复选框,以便贴纸应显示在产品图像上。我有一个css类'热门产品'。如果管理员选中热门产品复选框,我如何在产品图片上添加此类?如何添加在Woocommerce产品图像上销售的热属性

这里是我的功能,用于在销售价格下方添加复选框。

/ 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类,如果该复选框被选中。现在相应地设计它。

相关问题