Как сделать приставку «ОТ» для цены в WooCommerce
Здравствуйте, на связи Федор Васильев. В этом видео я покажу как добавить приставку «ОТ» для цены в вариативные товары на WooCommerce.
Зеркала на видео:
WooCommerce — интернет-магазин на WordPress.
В данном случае мы обойдемся без сторонних плагинов, и сделаем приставку «ОТ» к цене небольшим куском кода.
Внимание! Данные способ не может быть гарантированным на всех сайтах, зависит от Темы, версии WooCommerce и других факторов. В моем случае все работает!
Код нужно скопировать, и поместить в файл functions.php вашей Темы.
/** * Добавляем приставку "от" для вариативных товаров */add_filter( 'woocommerce_variable_price_html', 'truemisha_variation_price', 20, 2 ); function truemisha_variation_price( $price, $product ) { $min_regular_price = $product->get_variation_regular_price( 'min', true ); $min_sale_price = $product->get_variation_sale_price( 'min', true ); $max_regular_price = $product->get_variation_regular_price( 'max', true ); $max_sale_price = $product->get_variation_sale_price( 'max', true ); if ( ! ( $min_regular_price == $max_regular_price && $min_sale_price == $max_sale_price ) ) { if ( $min_sale_price < $min_regular_price ) { $price = sprintf( 'от <del>%1$s</del><ins>%2$s</ins>', wc_price( $min_regular_price ), wc_price( $min_sale_price ) ); } else { $price = sprintf( 'от %1$s', wc_price( $min_regular_price ) ); } } return $price; }
Решиние 2
В WooCommerce можно программно добавить приставку «от» перед ценой для простых товаров, если это необходимо — например, в случае, когда товар имеет диапазон цен (например, через пользовательские поля или вариации цен).
Если вы хотите, чтобы у простых товаров опционально добавлялась приставка «от», то вот пример кода, который можно вставить в файл functions.php вашей темы (или использовать через кастомный плагин):
✅ Пример: Добавление "от" перед ценой простого товара, если включён пользовательский флаг
// Добавляем метабокс для включения "от" в админкеadd_action('woocommerce_product_options_pricing', function() { woocommerce_wp_checkbox([ 'id' => '_show_price_prefix', 'label' => 'Показать "от" перед ценой?', 'description' => 'Если включено — перед ценой товара будет добавлено "от"', ]);});
// Сохраняем значение флажкаadd_action('woocommerce_process_product_meta', function($post_id) { $checkbox = isset($_POST['_show_price_prefix']) ? 'yes' : 'no'; update_post_meta($post_id, '_show_price_prefix', $checkbox);});
// Меняем отображение цены на витринеadd_filter('woocommerce_get_price_html', function($price, $product) { if ($product->is_type('simple')) { $show_prefix = get_post_meta($product->get_id(), '_show_price_prefix', true); if ($show_prefix === 'yes') { $price = 'от ' . $price; } } return $price;}, 10, 2);
🔧 Как использовать:
Перейдите в редактирование простого товара в админке.
Найдите флажок «Показать "от" перед ценой?» под ценой.
Включите его, если хотите, чтобы перед ценой отображалось "от".
- Просмотров: 1121