Как добавить единицы измерения у характеристик?

Как добавить единицы измерения к атрибутам? Чтобы можно было "Длина: 5 см"
Не смог найти решения. Нашёл такое, но не работает

add_action( 'woocommerce_product_options_shipping_product_data', 'woo_add_custom_general_fields' );
add_action( 'woocommerce_process_product_meta', 'woo_add_custom_general_fields_save' );

function woo_add_custom_general_fields() {

global $woocommerce, $post;
 
echo '<div class="options_group">';
// Add Select field in woocommerce
woocommerce_wp_select( 
array( 
	'id'      => '_select', 
	'label'   => __( 'Единица измерения', 'productunit' ), 
	'options' => array(
		'шт'   => __( 'шт', 'productunit' ),
		'пачка'   => __( 'пачка', 'productunit' ),
		'кв.м' => __( 'кв.м', 'productunit' )
		)
	)
);
echo '</div>'; }

function woo_add_custom_general_fields_save( $post_id ){
		
	// Select
	$woocommerce_select = $_POST['_select'];
	if( !empty( $woocommerce_select ) )
	update_post_meta( $post_id, '_select', esc_attr( $woocommerce_select ) );
	
}

add_filter( 'woocommerce_cart_product_price' , 'custom_price', 10, 2);
add_filter( 'woocommerce_get_price_html' , 'custom_price', 10, 2);

function custom_price( $price, WC_Product $product ){

$unit = get_post_meta( $product->get_ID(), '_select', true );

if ($unit) {

$price .= '<span class="woocommerce-Price-amount amount"><span class="product price amount rubl">';
$price .= ' / ' ;
$price .= $unit;
$price .= '</span></span>';

}

return $price;

}
  • Вопрос задан
  • 20 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы