WooCommerce:将RRP添加到产品

制造商的建议零售价(MSRP)或建议零售价(RRP)是制造商建议零售商以其出售产品的价格。您可能已经在广告,杂志,价格标签上看到了这一点:“ RRP:50美元。我们的价格:39美元!”。

WooCommerce:在单个产品页面上显示RRP / MSRP

 

WooCommerce:在产品编辑页面添加RRP / MSRP字段输入


// -----------------------------------------
// 1. Add RRP field input @ product edit page
  
add_action( 'woocommerce_product_options_pricing', 'bbloomer_add_RRP_to_products' );      
  
function bbloomer_add_RRP_to_products() {          
    woocommerce_wp_text_input( array( 
        'id' => 'rrp', 
        'class' => 'short wc_input_price', 
        'label' => __( 'RRP', 'woocommerce' ) . ' (' . get_woocommerce_currency_symbol() . ')',
        'data_type' => 'price', 
    ));      
}
  
// -----------------------------------------
// 2. Save RRP field via custom field
  
add_action( 'save_post_product', 'bbloomer_save_RRP' );
  
function bbloomer_save_RRP( $product_id ) {
    global $pagenow, $typenow;
    if ( 'post.php' !== $pagenow || 'product' !== $typenow ) return;
    if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
    if ( isset( $_POST['rrp'] ) ) {
    if ( $_POST['rrp'] )
        update_post_meta( $product_id, 'rrp', $_POST['rrp'] );
    } else delete_post_meta( $product_id, 'rrp' );
}
  
// -----------------------------------------
// 3. Display RRP field @ single product page
  
add_action( 'woocommerce_single_product_summary', 'bbloomer_display_RRP', 9 );
  
function bbloomer_display_RRP() {
    global $product;
    if ( $product->get_type() <> 'variable' && $rrp = get_post_meta( $product->get_id(), 'rrp', true ) ) {
        echo '<div class="woocommerce_rrp">';
        _e( 'RRP: ', 'woocommerce' );
        echo '<span>' . wc_price( $rrp ) . '</span>';
        echo '</div>';
    }
}