Przejdź do głównej zawartości

Slider produktów

Slider wyświetla karuzelę produktów z płynnym przewijaniem opartym na CSS scroll-snap. Nie wymaga zewnętrznych bibliotek JS (Slick, Swiper) - korzysta z natywnych mechanizmów przeglądarki.

Przejdź do WooCommerce > Polski > Moduły sklepowe i włącz Slider produktów.

Slider korzysta z CSS scroll-snap-type: x mandatory zamiast bibliotek karuzelowych. Zalety:

  • Zero JavaScript do przewijania - płynne natywne przewijanie
  • Brak zależności - nie trzeba ładować Slick, Swiper ani Owl Carousel
  • Pełna responsywność - automatyczne dostosowanie do szerokości ekranu
  • Dotyk i mysz - natywne wsparcie dla swipe na urządzeniach dotykowych
  • Wydajność - brak reflow/repaint przy przewijaniu, 60 FPS

Konfiguracja snap:

/* Slider domyślnie stosuje te wartości */
.polski-slider {
scroll-snap-type: x mandatory;
scroll-behavior: smooth;
}
.polski-slider__item {
scroll-snap-align: start;
}

Produkty powiązane z aktualnie oglądanym, dobierane na podstawie kategorii i tagów.

[polski_product_slider type="related" product_id="123"]

Produkty z aktywną ceną promocyjną.

[polski_product_slider type="sale" limit="12"]

Produkty oznaczone jako polecane (gwiazdka w panelu WooCommerce).

[polski_product_slider type="featured" limit="8"]

Produkty posortowane po liczbie sprzedaży.

[polski_product_slider type="bestsellers" limit="10"]

Produkty posortowane po dacie dodania.

[polski_product_slider type="latest" limit="10"]

Produkty z konkretnej kategorii.

[polski_product_slider type="category" category="elektronika" limit="12"]

Konkretne produkty podane po ID.

[polski_product_slider type="ids" ids="12,34,56,78,90"]

Blok Polski - Slider produktów dostępny w edytorze Gutenberg. Podgląd widoczny od razu w edytorze.

Opcje bloku:

OpcjaOpisDomyślnie
TypŹródło produktów (related/sale/featured/itp.)latest
LimitMaksymalna liczba produktów8
KolumnyLiczba widocznych produktów (desktop)4
Kolumny tabletWidoczne produkty na tablecie2
Kolumny mobileWidoczne produkty na telefonie1
StrzałkiPokaż strzałki nawigacjiTak
KropkiPokaż kropki paginacjiNie
Automatyczny scrollAutomatyczne przewijanieNie
Przerwa (gap)Odstęp między produktami16px
NagłówekTytuł nad sliderem(pusty)
ParametrTypDomyślnieOpis
typestringlatestTyp: related, sale, featured, bestsellers, latest, category, ids
limitint8Maksymalna liczba produktów
columnsint4Kolumny na desktopie
columns_tabletint2Kolumny na tablecie
columns_mobileint1Kolumny na telefonie
categorystring(pusty)Slug kategorii (dla type=category)
idsstring(pusty)ID produktów (dla type=ids)
product_idint(aktualny)ID produktu (dla type=related)
arrowsstringyesPokaż strzałki
dotsstringnoPokaż kropki paginacji
autoplaystringnoAutomatyczny scroll
autoplay_speedint5000Przerwa między slajdami (ms)
gapstring16pxOdstęp między kartami produktów
titlestring(pusty)Nagłówek nad sliderem
orderbystringdateSortowanie: date, price, rating, rand
orderstringDESCKierunek: ASC lub DESC

Slider produktów w promocji z nagłówkiem:

[polski_product_slider type="sale" limit="12" columns="4" title="Aktualne promocje" arrows="yes"]

Slider produktów z kategorii na stronie głównej:

[polski_product_slider type="category" category="nowosci" limit="8" columns="3" dots="yes"]

Automatycznie przewijany slider bestsellerów:

[polski_product_slider type="bestsellers" limit="10" autoplay="yes" autoplay_speed="4000"]

Gdy autoplay="yes", slider przewija produkty automatycznie. Przewijanie zatrzymuje się po najechaniu kursorem lub dotknięciu na mobile. Po opuszczeniu slidera wznawia się.

// Zmiana domyślnego czasu autoplay globalnie
add_filter('polski/product_slider/autoplay_speed', function (): int {
return 3000; // 3 sekundy
});

Karty produktów w sliderze zawierają elementy innych modułów:

  • Etykiety - odznaki wyprzedaży, nowości, bestsellera
  • Lista życzeń - ikona serca
  • Porównywarka - przycisk porównania
  • Szybki podgląd - ikona oka
  • Cena Omnibus - najniższa cena z 30 dni

Zdjęcia ładują się leniwie - obrazy poza widocznym obszarem pobierają się dopiero przy przewinięciu. Użyty jest natywny loading="lazy" i Intersection Observer dla starszych przeglądarek.

  • .polski-slider - kontener slidera
  • .polski-slider__track - ścieżka scroll
  • .polski-slider__item - karta produktu
  • .polski-slider__arrow - strzałka nawigacji
  • .polski-slider__arrow--prev - strzałka w lewo
  • .polski-slider__arrow--next - strzałka w prawo
  • .polski-slider__dots - kontener kropek paginacji
  • .polski-slider__dot - pojedyncza kropka
  • .polski-slider__dot--active - aktywna kropka
  • .polski-slider__title - nagłówek

Slider nie przewija się płynnie - sprawdź wsparcie przeglądarki dla scroll-snap-type (Chrome 69+, Firefox 68+, Safari 11+).

Strzałki nie działają - możliwy konflikt CSS z innym sliderem. Style motywu mogą nadpisywać klasy .polski-slider__arrow.

Autoplay nie zatrzymuje się - sprawdź, czy wtyczka optymalizująca nie blokuje JavaScript. Skrypt slidera musi być załadowany.

Zgłaszanie problemów: github.com/wppoland/polski/issues

Ta strona ma wyłącznie charakter informacyjny i nie stanowi porady prawnej. Przed wdrożeniem skonsultuj się z prawnikiem. Polski for WooCommerce jest oprogramowaniem open source (GPLv2) dostarczanym bez gwarancji.