Przejdź do głównej zawartości

Konfiguracja

Vitrino konfiguruje się na jednym ekranie, WooCommerce > Vitrino. Wszystko zapisuje się w jednej opcji catalog_settings (tablica), a ekran jest dostępny dla każdego z uprawnieniem manage_woocommerce, nie tylko dla administratora. Każda opcja ma pomoc kontekstową; ta strona wyjaśnia każdą z nich, jej klucz w bazie i wzajemne zależności.

Zapisywany jako enabled, domyślnie włączony. To przełącznik nadrzędny. Gdy jest wyłączony, nic nie jest ukrywane, arkusz stylów sklepu nie jest ładowany, a sklep sprzedaje dokładnie tak jak zwykle, żadne inne ustawienie na ekranie nie ma wtedy znaczenia. Gdy jest włączony, decydują reguła odwiedzających i dwa przełączniki “co ukryć”.

Te dwa przełączniki są niezależne: możesz ukryć jeden, oba albo (przy włączonym przełączniku głównym i obu wyłączonych) nic.

Zapisywana jako hide_price, domyślnie włączona. Usuwa cenę wszędzie tam, gdzie WooCommerce ją wypisuje: filtruje woocommerce_get_price_html, więc cena znika na kartach produktów, na listach sklepu i kategorii, w produktach powiązanych i wszędzie indziej, gdzie motyw renderuje cenę. Jeśli ustawisz Komunikat zamiast ceny, ten tekst zajmuje miejsce ceny; w przeciwnym razie miejsce po cenie zostaje puste.

Zapisywane jako hide_add_to_cart, domyślnie włączone. Usuwa formularz dodania do koszyka na karcie produktu i link koszyka na listach. Oznacza też produkt jako niemożliwy do kupienia (przez woocommerce_is_purchasable), więc ukrytego produktu nie da się dodać do koszyka zgadniętym adresem ?add-to-cart= ani żądaniem Store API. Ukrycie koszyka jest więc egzekwowane, a nie tylko wizualne.

Zapisywany jako price_notice, domyślnie pusty. Opcjonalny tekst pokazywany w miejscu ukrytej ceny, na przykład “Skontaktuj się w sprawie ceny” albo “Zaloguj się po ceny hurtowe”. Renderuje się tylko wtedy, gdy Ukryj cenę jest włączone; pozostaw puste, aby nie pokazywać w miejscu ceny niczego. Na sklepie ma formę niewielkiej mosiężnej tabliczki “cena na zapytanie”, opisanej niżej w sekcji o wyglądzie. Wartość przechodzi przy zapisie przez sanitize_text_field, więc jest zwykłym tekstem, nie HTML-em.

Zapisywana jako role_mode, domyślnie everyone. Decyduje, którym odwiedzającym tryb katalogu ukrywa ceny i zakup. Cztery opcje:

  • Wszyscy (everyone), dotyczy wszystkich odwiedzających.
  • Tylko niezalogowani (guests), goście widzą katalog; każdy zalogowany klient widzi ceny i dodanie do koszyka.
  • Tylko wybrane role (roles), dotyczy wyłącznie ról zaznaczonych na liście poniżej.
  • Wszyscy oprócz wybranych ról (except_roles), dotyczy wszystkich poza zaznaczonymi rolami. To konfiguracja hurtowa: zaznacz swoją rolę hurtową, a ci klienci zachowają ceny i zakupy, gdy reszta zobaczy katalog.

Zapisywane jako role_list (tablica slugów ról). Lista powstaje z edytowalnych ról Twojej witryny. Czytają ją tylko reguły Tylko wybrane role i Wszyscy oprócz wybranych ról; przy pozostałych dwóch jest ignorowana, a ekran ją wygasza i pisze o tym wprost. Przy zapisie zostają wyłącznie poprawne, istniejące slugi ról.

Warto znać przypadek brzegowy: przy Tylko wybrane role i żadnej zaznaczonej roli tryb katalogu nie obejmuje nikogo (sklep sprzedaje normalnie). Przy Wszyscy oprócz wybranych ról i braku zaznaczeń obejmuje wszystkich.

Dla każdego produktu przy każdym wyświetleniu strony, z włączonym przełącznikiem głównym, Vitrino rozstrzyga w tej kolejności:

  1. Reguła odwiedzających decyduje, czy bieżący odwiedzający jest objęty (to decyzja catalog/applies).
  2. Jeśli jest, Ukryj cenę i Ukryj dodanie do koszyka stosują się do produktu niezależnie od siebie.
  3. Komunikat zamiast ceny wypełnia miejsce po ukrytej cenie; ukryte dodanie do koszyka jest dodatkowo blokowane po stronie serwera.

W darmowej edycji nie ma zakresu per produkt ani per kategoria: gdy przełącznik główny jest włączony, a odwiedzający objęty regułą, zasady dotyczą całego katalogu. Wyjątki per produkt i per odwiedzający robi się w kodzie, filtrami catalog/applies, catalog/hide_price i catalog/hide_add_to_cart.

Jedyny znacznik dla kupującego, jaki dodaje Vitrino, to komunikat zamiast ceny, wypisywany jako <span class="catalog-price-notice">. Jego arkusz stylów (assets/css/catalog.css, ładowany tylko przy włączonym trybie katalogu) renderuje go jako wytłoczoną mosiężną tabliczkę, w ciepłym mosiężno-ochrowym akcencie zamiast typowego niebieskiego. Akcent, zaokrąglenie i wypełnienie są wystawione jako własne właściwości CSS --catalog-notice-*, więc przefarbujesz go z motywu w jednym miejscu. Wariant ciemny rozjaśnia mosiądz na ciemnych motywach, a jedyna mikrointerakcja (kreska wjeżdżająca raz przy pierwszym malowaniu) jest wyłączana przez prefers-reduced-motion i nie powoduje przeskoku układu.

Vitrino deklaruje zgodność z HPOS (custom_order_tables) oraz blokami koszyka i finalizacji (cart_checkout_blocks). Ekran ustawień korzysta ze standardowych stylów panelu WordPressa i dziedziczy jego obsługę trybu ciemnego. Wtyczka dostarcza plik POT do tłumaczeń; na instalacjach z WordPress.org tłumaczenia ładują się automatycznie po slugu.

Wszystkie ustawienia leżą w jednej opcji catalog_settings w Twojej własnej bazie danych, Vitrino nie łączy się z żadną usługą zewnętrzną. Druga opcja, catalog_db_version, przechowuje wersję schematu. Usunięcie wtyczki uruchamia procedurę deinstalacji, która kasuje obie opcje. Nie ma żadnych własnych tabel.