Tylko administratorzy mogą wejść do centrum administracyjnego. Zaloguj się
Generator widżetów
Kup widżet przedmiotów
«Widget» – to interaktywny blok z danymi do umieszczenia na stronie. Widget można generować za pomocą specjalnego krótkiego kodu («ShortCode»), który może zawierać dodatkowe parametry. Otrzymany kod można wkleić na strony lub do Bloków/Menu.Jak wstawić wygenerowane menu?
- Możesz użyć kodu automatycznej wymiany, wprowadzając [MENU:shop_products_slider:htmlonly:pers_cat_id-0:cat_id-0:site-0:start-0:on_page-3:description:button-cart:lazy-0:bestseller:sale]
Listę wartości możesz wypełnić za pomocą generatora «Widżet z produktami». - Możesz wstawić wygenerowany kod do bloku/menu lub strony.
-
Uwaga! Jeśli używasz wielu menu na jednej stronie, nie musisz ponownie wstawiać kodu Java Script i stylów CSS.
Domyślnie standardowy zestaw funkcji Twojego sklepu zawiera już ten styl JavaScript i CSS. Kod możesz ponownie wstawić tylko wtedy, gdy konieczna jest zmiana jego wyglądu lub funkcjonalności.
W swoim kodzie możesz użyć następujących opcji:
- :pers_cat_id- - ID kategorii (wyświetlą się tylko produkty z tej kategorii w Twoim katalogu). Możliwych jest kilka wartości oddzielonych przecinkami.
- :subcategoriesproduct - Pokaż produkty z podkategorii.
- :site- - ID Twojej witryny, ale wewnątrz Twojej witryny nie możesz go używać
- :producer- - ID producenta (wyświetlą się tylko produkty z tej kategorii producentów, Twój katalog. Możliwych jest kilka wartości oddzielonych przecinkami.
- :producer_country- - kraj produkcji (wyświetlone zostaną tylko produkty z tego kraju produkcji. Wartość tekstowa).
- :collection- - ID kolekcji (wyświetlą się tylko produkty z tej kategorii - kolekcja, Twój katalog). Możliwych jest kilka wartości oddzielonych przecinkami.
- :product_type- - ID typu produktu (wyświetlą się tylko produkty określonego typu. Możliwych jest kilka wartości oddzielonych przecinkami.
- :on_page — Liczba wyświetlanych produktów w sliderze, na przykład 4. Przy użyciu «Auto-szerokość» wartość zostanie zmieniona w zależności od rozmiaru ekranu.
- :start- - początkowa strona slidera, numer od którego ma się zacząć przeglądanie produktów. Przykładowo, jeżeli na stronie wyświetlanych jest 6 produktów, a numerem startowym jest 2, to zostaną wyświetlone produkty od 6 do 12.
- :button-cart - Pokaż przycisk Dodaj do koszyka
- :button-compare - Pokaż przycisk porównania
- :description - Pokaż krótki opis produktu
- :rating-stars - Pokaż ocenę w gwiazdkach
- :favorite-icon - Pokaż ikonę Dodaj do ulubionych
- :variety - Pokaż różnorodność (tylko dla płatnego hostingu)
- :random - Pokaż bez zamawiania według identyfikatora
- :one - Przewiń tylko jeden produkt
- :bestseller - Pokaż tylko Bestsellery
- :discount - Pokaż tylko produkty przecenione
- :sale - Pokaż tylko artykuły promocyjne
- :stock- - Dostępność (wskazać tylko określony stan dostępności)
- :new-products - Pokaż tylko produkty oznaczone jako Nowe
- :reduced-price - Pokaż tylko produkty oznaczone jako Cena obniżona
- :recently-viewed-products - Ostatnio wyświetlane produkty
- :favorite-products - Polecane produkty
- :search- - zapytanie wyszukiwania (wyszukiwanie tekstowe produktów) [można doprecyzować poprzez oddzielenie symbolu «~» - jest równoznaczne z wyjaśnieniem «И»] lub [prawdopodobnie udoskonalenie rozdzielone znakami «||» - jest równoznaczne z wyjaśnieniem «LUB»]
- :products_id- - id produktu (oddzielone przecinkami, bez spacji)
- :lang- - język wyświetlanych artykułów (jeśli nie zostanie określony, użyty zostanie język otwieranej strony)
- :products_synonyms- - towary Synonimy (słowo jest synonimem
)
- :mosaic-sides - dzieli blok na dwie części. 0 - Wyłączone, 1 - Włączone, 2 - Włączone + Tytuł nad obrazem, 3 - Włączone + Tytuł nad obrazem + Ikony nad obrazem, 4 - Włączone + Ikony nad obrazem.
Styl CSS dla efektu mozaiki
Aby produkty zmieniały swój układ lustrzanie co drugi element, dodaj poniższy styl CSS w Edytorze wyglądu:Code: CSS.hotengine-shop-products-mosaic-sides .hotengine-shop-product-list-block:nth-child(even) { flex-direction: row-reverse; }
Podstawowy styl CSS mozaiki hotengine-template-products-mosaic-style.css - :lazy - szybsze ładowanie obrazu. 0 — wł., 1 — wył. Domyślnie używana jest wartość z ogólnych ustawień sklepu, jeśli parametr lazy nie jest określony
- :order_by- - Sortowanie. 0 — Według identyfikatora produktu, 4 — Według nazwy, 5 — Według priorytetu, 1 — Według daty, 2 — Według ceny
- :sort_by- - Sortowanie. ASC — rosnąco, DESC — malejąco
- :price_from- - Cena od
- :price_to- - Cena do
- :repeat - powtórz slajdy po zakończeniu listy produktów
- :auto_width - Automatyczna szerokość (liczba wyświetlanych kart jest różna)
- :append - dodawać nowe elementy na końcu listy.
Sposób dodania parametru zależnego od rozmiaru ekranu
Blok produktów zostanie przełączony w trybappendprzy określonych w parametrach wartościach, np. «:append-900x9999», gdzie:- 900 — minimalna szerokość ekranu (w pikselach), od której funkcja jest aktywna;
- 9999 — maksymalna szerokość ekranu (w pikselach), do której funkcja działa (opcjonalnie).
Tryb:appenddziała tylko w zakresie szerokości ekranu od minimalnej do maksymalnej wartości. W innych przypadkach:appendjest wyłączany, a działają inne sposoby wizualnego działania widżetu (scroll, swipe, automatyczne dopasowanie szerokości itp.).
Jeśli podano tylko pierwszy parametr, np. «:append-900», funkcja jest aktywna dla ekranów o szerokości od 900px wzwyż — zalecany sposób określania parametru.Styl CSS przy użyciu parametru append
Aby przycisk «dodaj pozostałe produkty» pod listą wyświetlał się na dole, należy dodać następujący styl CSS. #product_list - id bloku z produktami.Code: CSS#product_list #product_list .hotengine-shop-products-list-div-append .hotengine-shop-products-list-div-button-right:after{ content:'\2026'; color:#b5b5b5; font-family:Arial, Helvetica, sans-serif;} #product_list .hotengine-shop-products-list-div-button-left { display: none!important;}- :carousel - eksperymentalna funkcja karuzeli sów, przewijanie z obsługą przesuwania dotykowego *
Zmień ustawienia
Domyślny rozmiar okna jest określany przez Javascript.
Możesz określić wiele dodatkowych parametrów, których lista jest dostępna pod tym linkiem: Docs Options.
Aby ustawić parametr, użyj szablonu:
:carousel-autoplayTimeout-1000
:carousel-autoplaySpeed-5000
:carousel-autoplay-true
i tak dalej (:karuzela-PARAMETR-WARTOŚĆ).
Alternatywnie opcję można określić za pomocą JavaScript атрибута carousel-...
data-carousel-autoplayTimeout="1000"
data-carousel-autoplaySpeed="5000"
data-carousel-autoplay="true"
i tak dalej (data-carouserl-PARAMETER="wartość")
Możesz także rozszerzyć suwak na górze standardowego suwaka platformy za pomocą JavaScript.
Utwórz standardowy slider z kodem [MENU...] i dodaj go do bloku .hotengine-shop-products-list-div-append class hotengine-shop-products-list-carousel.
Пример:Code: JavaScript<script> (function() { const initResponsiveLayout = () => { const productList = document.querySelector(`#MAIN_ID_PRODUCT_LIST`); const appendDiv = document.querySelector(`.hotengine-shop-products-list-div-append`); const updateLayout = () => { if (window.innerWidth < 900) { if (appendDiv) { appendDiv.classList.add(`hotengine-shop-products-list-carousel`); //добавить carousel } if (productList) { const nw = window.innerWidth - 60; productList.style.width = `${nw}px`; } } else { if (appendDiv) { appendDiv.classList.remove(`hotengine-shop-products-list-carousel`); } if (productList) { productList.style.removeProperty(`width`); } } }; updateLayout(); window.addEventListener(`resize`, updateLayout); window.addEventListener(`load`, updateLayout); }; if (document.readyState === `loading`) { document.addEventListener(`DOMContentLoaded`, initResponsiveLayout); } else { initResponsiveLayout(); } })();</script>
- :add-javascript - jeśli nie dodasz tego parametru, to będzie tylko lista produktów (bez stylów javscript i css, które musisz wcześniej wstawić).
Ta opcja jest przydatna, jeśli chcesz nadać styl własnemu suwakowi. W takim przypadku musisz wstawić JavaScript, kod CSS i krótki kod [MENU...]- :id- - powiąż ID z głównym DIV. Może służyć do dostosowywania obszaru suwaka. #start_product_list .hotengine-shop-products-list-div-button-right:after{ content:'\2026'; color:#b5b5b5; font-family:Arial, Helvetica, sans-serif;}
Podczas wyświetlania produktów zaleca się:- włączyć «:auto_width» — Auto-szerokość (liczba widocznych kart produktów zmienia się automatycznie, aby wypełnić całą dostępną przestrzeń bloku);
- włączyć «:swipe» — Efekt przesuwania (przewijanie palcem lub kursorem) dla poprawy wygody użytkowania;
- włączyć «:scroll-9999x8x0» — zastąpić sposób wyświetlania blokiem z przewijaniem produktów na urządzeniach mobilnych (gdy szerokość ekranu jest mniejsza niż 9999px), aby zaoszczędzić miejsce i usunąć przyciski przewijania;
- włączyć «:lazy-0» — przyspieszone ładowanie obrazów kart produktów.
- dodatkowo możesz połączyć «:append» i «:scroll» — blok będzie dodawał nowe produkty na końcu listy na ekranach szerszych niż określona granica, a na mniejszych automatycznie przełączy się w tryb scroll. Na przykład «:append-900:scroll-9999x8x0» — append aktywny tylko na ekranach szerszych niż 900px;
Styl CSS do adaptacyjnej zmiany szerokości kart produktów w zależności od rozmiaru bloku z produktami:
Jeśli używasz standardowych szablonów, styl jest już automatycznie dołączony.
Code: CSS/*MODAL WINDOW PRODUCT LIST STYLE */ .modal__content { container-type: inline-size; } .modal__content .hotengine-shop-product-list-block { width: 24%; display: inline-block; } @container (max-width: 1900px) { .modal__content .hotengine-shop-product-list-block { width: 15%; } } @container (max-width: 1500px) { .modal__content .hotengine-shop-product-list-block { width: 20%; } } @container (max-width: 980px) { .modal__content .hotengine-shop-product-list-block { width: 32%; } } @container (max-width: 600px) { .modal__content .hotengine-shop-product-list-block { width: 49%; } } /*MODAL WINDOW PRODUCT LIST STYLE */ /* PRODUCT LIST ADAPTIVE INSIDE WIDGET CONTENT */ .hotengine-shop-products-list-div { container-type: inline-size; } @container (min-width: 1900px) { .hotengine-shop-products-list-div .hotengine-shop-product-list-block { width: 14%; } } @container (max-width: 1900px) { .hotengine-shop-products-list-div .hotengine-shop-product-list-block { width: 15%; } } @container (max-width: 1500px) { .hotengine-shop-products-list-div .hotengine-shop-product-list-block { width: 20%; } } @container (max-width: 980px) { .hotengine-shop-products-list-div .hotengine-shop-product-list-block { width: 32%; } } @container (max-width: 600px) { .hotengine-shop-products-list-div .hotengine-shop-product-list-block { width: 49%; } } /* PRODUCT LIST ADAPTIVE INSIDE WIDGET CONTENT */
Ajax ładowanie listy towarów:
Generator bloków z towarami można załadować za pomocą żądania GET/POST/AJAX. Aby to zrobić, musisz wysłać żądanie ze swojej witryny (twojej domeny) do strony "/ajax_get_list_shop.php". W zapytaniu możesz określić dodatkowe właściwości do wyświetlania produktów. Listę wszystkich możliwych wartości znajdziesz powyżej. Aby poprawnie wyświetlić styl listy produktów, należy dodać wrapper HTML i elementy nadrzędne, a także przyciski przewijania/kontynuowania listy produktów (przewijanie do przodu/do tyłu). Przykład takiego wrappera i przekazywania parametrów znajduje się pod linkiem - Przykład wczytywania listy produktów i przekazywania parametrów przez AJAX/POST/GET.