Как всегда отображать цену вариации при выборе вариации

На странице вариативного товара обычно отображаются две цены, первая – цена товара, которая является диапазоном, вторая – цена вариации, которая появляется после выбора вариации. Но…

Но есть важный момент, в случае если цены всех вариаций одинаковы – то вместо первой цены (та, которая диапазон) отображается вполне конкретная цена, а вторая (которая должна появляться при выборе) не отображается вовсе.

В этом уроке я покажу вам, как вернуть вторую цену. Чтобы вам лучше понять, что я имею ввиду, я покажу вам два скриншота,

У меня на сайте есть видеоурок, в котором мы создавали страницу товара на основе готового HTML и там мы рассмотрели сложные ситуации с вариативными товарами, вот ссылка.

Скриншот 1 – когда цены вариаций отличаются.

Разные цены вариативного товара в WooCommerce
Когда цены вариаций отличаются, то мы видим, что во-первых отображается диапазон цен, а во-вторых, при выборе вариации (размера) также появляется и цена этого конкретного размера.

Скриншот 2 – когда цены вариаций одинаковы.

Цена вариации WooCommerce не отображается, если цена каждой вариации одинакова.
На этом скриншоте цена каждого размера ремня одинакова. И поэтому при выборе какого-то определённого размера у нас не появляется дополнительно его цена рядом с кнопкой добавления в корзину.

Теперь давайте сделаем то, ради чего и был написан этот урок. Для этого вставьте код ниже в functions.php вашей текущей (лучше дочерней темы) или в свой отдельный плагин.

add_filter( 'woocommerce_show_variation_price', '__return_true', 25 );

Или, если вам так более удобно – этот:

add_filter( 'woocommerce_show_variation_price', 'truemisha_show_variation_price', 25 );
 
function truemisha_show_variation_price( $show_or_hide ){
 
	$show_or_hide = true; // true – отображать, false – скрывать (по умолчанию)
	return $show_or_hide;
 
}

В итоге мы получили то, что хотели, вот скриншот:

При выборе вариации появляется цена, даже если цены всех вариаций одинаковы.
Вот мы и изменили стандартное поведение WooCommerce, цена конкретной вариации при выборе появлятеся, даже если цены всех вариаций одинаковы.

Миша

Недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.

Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.

Оставить комментарий

Если вы хотите добавить код, не забудьте обернуть его в <pre lang="php"></pre>, если же код – меньше одной строчки, то можно и в <code></code>.