а по поводу вариативности почитайте тут https://docs.woocommerce.com/document/variable-product/
действительно товар не вариативный. и у меня не получилось сделать на том проекте к которому имею доступ. но у меня тема сильно порезана.
Ярослав Рыженко: Я бы хотел предложить немного поменять логику работы. setInterval сейчас неоправданно много запускается и сжирает память. Настоятельно советую с функции getAttr убрать setInterval. А вместо этого обернуть в рекурсивный setTimeout запуск функций getAttr(picBlock1, picArr[0]);getAttr(picBlock2, picArr[1]);getAttr(picBlock3, picArr[2]);
Я везде где смог поменял setInterval на рекурсивный setTimeout
Как рекурсивно запускать setTimeout есть на сайте Ильи Кантора. https://learn.javascript.ru/settimeout-setinterval
поправите это, если не заработает, то можно будет где-то опробовать функцию онлайн
Хороший ответ. можно без переменной, тоже работает
$(document).ready(function() {
$('div').each(function(i, e) {
$(this).attr('data-color', $(this).css('background-color'));
})
});