У меня есть сетка продуктов здесь:
https://test.skihal.com/skihallen/alpincenter-bottrop#producten_skihal
Все элементы <li>
в сетке имеют разные классы и одинаковые классы. Основная категория везде одинакова: Alpincenter Bottrop.
Подкатегория одна и та же иногда.
Я хочу обернуть все <li>
элементов одной и той же подкатегорией WooCommerce в DIV с именем <new />
с помощью jQuery
Я нашел это где-то еще здесь:
var classes = {};
$(".products > li").each(function() {
var temp = $(this).attr("class").split(' ');
if (temp[1]) {
classes[temp[1]] = true;
}
});
for (singleClass in classes) {
$("." + singleClass).wrapAll('<div class="new" />');
}
Эта часть кода
<ul class="products">
<li class="post-3204 product type-product status-publish product_cat-alpincenter-bottrop product_cat-winter-all-incl-dagticket-ma-t-m-vrij first instock sale shipping-taxable purchasable product-type-simple"></li>
<li class="post-3206 product type-product status-publish product_cat-winter-all-incl-dagticket-ma-t-m-do product_cat-alpincenter-bottrop last instock sale shipping-taxable purchasable product-type-simple"></li>
<li class="post-3211 product type-product status-publish product_cat-alpincenter-bottrop product_cat-winter-all-incl-dagticket-zat-zon last instock sale shipping-taxable purchasable product-type-simple"></li>
<li class="post-3213 product type-product status-publish product_cat-alpincenter-bottrop product_cat-winter-all-incl-dagticket-zat-zon last instock sale shipping-taxable purchasable product-type-simple"></li>
</ul>
В найденной мной функции я могу заполнить 5
вместо 1
, потому что класс подкатегории товаров находится на 6-м месте. Но не во всех элементах, например, во втором <li>
он находится на 5-м месте. Поэтому вместо заполнения числа в temp
я хочу обернуть элементы if
, class
, начинающиеся с product_cat
, совпадают. Главная и подкатегория.