Подключите нашего Telegram-бота для уведомлений о новых проектах
доработка кода для woocommerce, wordpress
Разместить заказ

s
Заказчик
Отзывы фрилансеров:
+ 1
- 0
Зарегистрирован на сайте 3 года и 10 месяцев
Бюджет:
1500 ₽/час
Вариативный товар выводить как множество товаров. Сейчас это реализовано с помощью плагина wc-variations-as-single-product-pro. Но он не подтягивает галерею для каждой вариации, а также у такого товара не отображает варианты остальных цветов.
Задача:
1. Добавить галерею для вариативных товаров, чтобы у вариации выводилась свои фото аналогично родительскому.
2. Добавить вариацию по цвету аналогично родительскому, но чтобы первый цвет шел цвет этой вариации.
3. Убрать вариации по размеру и оставить только один атрибут – по цвету. Убедится что цвет не дублируется, так как вариации товаров сделаны так: на каждый цвет ещё и размер.
Важно знать:
1. По дефолту у woocommerce нет встроеннеой галереи для вариации, там можно указать лишь одну картинку. Поэтому мы реализовали галерею для каждой вариации.
Код:
\add_action('itglx_wc1c_product_variation_images', function ($variationId, $attachmentIds) {
// если картинок нет или меньше двух, очистим мету с галереей
if (empty($attachmentIds) || count($attachmentIds) < 2) {
\update_metadata('post', $variationId, '_variation_images', '');
return;
}
// уберем первый ID медиафайла из набора, так как он уже используется, как основная картинка вариации
array_shift($attachmentIds);
$imageUrls = [];
foreach ($attachmentIds as $attachmentId) {
$imageUrls[] = \wp_get_attachment_url($attachmentId);
}
\update_metadata('post', $variationId, '_variation_images', implode(';', $imageUrls));
}, 10, 2);
2. Для вариации по цветам используется специальный плагин: aovup Variation Swatches
3. Для вывода вариаций как отдельных товаров активирован плагин: wc-variations-as-single-product-pro
Задача:
1. Добавить галерею для вариативных товаров, чтобы у вариации выводилась свои фото аналогично родительскому.
2. Добавить вариацию по цвету аналогично родительскому, но чтобы первый цвет шел цвет этой вариации.
3. Убрать вариации по размеру и оставить только один атрибут – по цвету. Убедится что цвет не дублируется, так как вариации товаров сделаны так: на каждый цвет ещё и размер.
Важно знать:
1. По дефолту у woocommerce нет встроеннеой галереи для вариации, там можно указать лишь одну картинку. Поэтому мы реализовали галерею для каждой вариации.
Код:
\add_action('itglx_wc1c_product_variation_images', function ($variationId, $attachmentIds) {
// если картинок нет или меньше двух, очистим мету с галереей
if (empty($attachmentIds) || count($attachmentIds) < 2) {
\update_metadata('post', $variationId, '_variation_images', '');
return;
}
// уберем первый ID медиафайла из набора, так как он уже используется, как основная картинка вариации
array_shift($attachmentIds);
$imageUrls = [];
foreach ($attachmentIds as $attachmentId) {
$imageUrls[] = \wp_get_attachment_url($attachmentId);
}
\update_metadata('post', $variationId, '_variation_images', implode(';', $imageUrls));
}, 10, 2);
2. Для вариации по цветам используется специальный плагин: aovup Variation Swatches
3. Для вывода вариаций как отдельных товаров активирован плагин: wc-variations-as-single-product-pro
Разделы:
Опубликован:
07.09.2024 | 10:39 [поднят: 07.09.2024 | 10:39]