add custom price to cart
-
I’m trying to add custom price to the cart instead of the regural one.
I created a custom field like that
add_action( ‘woocommerce_product_options_pricing’, ‘wc_rrp_product_field’ );
function wc_rrp_product_field() {
woocommerce_wp_text_input( array( ‘id’ => ‘euro_price’, ‘class’ => ‘wc_input_price short’, ‘label’ => __( ‘EURO price’, ‘woocommerce’ ) ) );}
add_action( ‘save_post’, ‘wc_rrp_save_product’ );
function wc_rrp_save_product( $product_id ) {
// If this is a auto save do nothing, we only save when update button is clicked
if ( defined( ‘DOING_AUTOSAVE’ ) && DOING_AUTOSAVE )
return;
if ( isset( $_POST[‘euro_price’] ) ) {
if ( is_numeric( $_POST[‘euro_price’] ) )
update_post_meta( $product_id, ‘euro_price’, $_POST[‘euro_price’] );
} else delete_post_meta( $product_id, ‘euro_price’ );
// If this is a auto save do nothing, we only save when update button is clicked
if ( defined( ‘DOING_AUTOSAVE’ ) && DOING_AUTOSAVE )
return;
}So I can display the value with
get_post_meta( $post->ID, ‘euro_price’, true );
As the next step I try to override the defualt price with that
add_action( ‘woocommerce_before_calculate_totals’, ‘add_custom_price’ );
function add_custom_price( $cart_item_key ) {
global $post, $woocommerce;
$custom_price = get_post_meta( $post->ID, ‘euro_price’, true ); // This will be your custome price
foreach ( $cart_item_key->cart_contents as $key => $value ) {
$value[‘data’]->price = $custom_price;
}
}But the price is 0, then my question is: how can I get the custom field value and post it into the
$custom_price
variable ?
- The topic ‘add custom price to cart’ is closed to new replies.