Skip to content
- Choosing a selection results in a full page refresh.
(function() {
function shuffleGrid() {
// נסי אחד מהסלקטורים בהתאם לגרסת ELLA שלך
const grid = document.querySelector('[data-collection-products], .product-grid, .products-grid, .products-list');
if (!grid) return;
const items = Array.from(grid.children);
// Fisher–Yates
for (let i = items.length - 1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
grid.insertBefore(items[j], items[i]);
}
}
// רנדומלי תמיד:
// document.addEventListener('DOMContentLoaded', shuffleGrid);
// רנדומלי רק כשנבחר "random" בדרופדאון:
document.addEventListener('DOMContentLoaded', () => {
const sortSelect = document.querySelector('select[name="sort_by"]');
if (sortSelect && sortSelect.value === 'random') shuffleGrid();
});
// תמיכה ב-AJAX של ELLA: להאזין לאירוע רנדר/סיום פילטר של התבנית
// לחלק מגרסאות ELLA יש אירועים מותאמים; אם אין, אפשר להאחז ב־MutationObserver:
const target = document.querySelector('[data-collection-products], .product-grid, .products-grid, .products-list');
if (target) {
const mo = new MutationObserver(() => {
const sortSelect = document.querySelector('select[name="sort_by"]');
if (sortSelect && sortSelect.value === 'random') shuffleGrid();
});
mo.observe(target, { childList: true });
}
})();