PS PrestaShop Początkujący

Sklep Prywatny dla PrestaShop: pełny przewodnik

Instalacja i konfiguracja DataFirefly Sklep Prywatny: tryby dostępu, strona logowania, logowanie przez Google, Facebooka, Apple i Instagram, zatwierdzanie kont i ceny tylko dla członków.

Zaktualizowano Wersja modułu 1.2.1

<p>DataFirefly Sklep Prywatny rezerwuje cały sklep PrestaShop 8 i 9, albo tylko jego część, dla klientów, których zatwierdzisz. Ten przewodnik obejmuje instalację, trzy tryby dostępu, wygląd strony prywatnej, logowanie społecznościowe, obsługę próśb i tryb cen tylko dla członków.</p>

<h2>Instalacja</h2>
<p>W panelu administracyjnym wejdź w Moduły > Menedżer modułów > Wgraj moduł i upuść plik ZIP. Podczas instalacji moduł tworzy swoje tabele, dodaje zakładkę Klienci > Prośby o dostęp i rejestruje stronę prywatną (adres typu /module/dfprivateshop/private, przepisywany na /dostep-prywatny/, gdy przyjazne adresy URL są włączone).</p>
<p>Następnie otwórz konfigurację modułu. Pasek u góry przypomina bieżący stan, twój adres IP oraz URI przekierowania do zadeklarowania u dostawców logowania społecznościowego, a także sygnalizuje przeszkody: brak rozszerzenia cURL, brak praw zapisu do folderu img/dfprivateshop, zainstalowany moduł pamięci podręcznej stron.</p>
<div class=”df-callout note”><p>Moduł jest dostarczany wyłączony. W sklepie nic się nie zmienia, dopóki nie wybierzesz trybu w zakładce Dostęp.</p></div>

<h2>Wybór trybu dostępu</h2>
<h3>Cały sklep jest prywatny</h3>
<p>Każda strona wymaga konta. Dostępne pozostają: strona logowania modułu, strona kontaktu, jeśli ją dopuścisz, strony CMS wskazane jako publiczne, strona resetowania hasła i kontrolery modułów płatności. To tryb dla hurtownika, klubu albo sklepu w budowie.</p>
<h3>Prywatne są tylko wybrane części</h3>
<p>Wskazujesz kategorie (podkategorie idą automatycznie), produkty po ID, marki, dostawców, strony CMS, stronę główną i wzorce URL ze znakiem <code>*</code>. Wybrane produkty znikają także z list, wyszukiwarki, podpowiedzi, filtrów fasetowych i bloków produktów innych modułów, żeby nie przeciekła nazwa, zdjęcie ani cena.</p>
<h3>Ceny tylko dla członków</h3>
<p>Osobny przełącznik, działający przy wyłączonym trybie sklepu albo razem z wybranymi częściami. Katalog pozostaje publiczny i indeksowalny, ale odwiedzający bez dostępu nie widzą ani cen, ani przycisku dodania do koszyka, ani filtra i sortowania po cenie. Moduł włącza natywny tryb katalogu PrestaShop tylko na czas bieżącego żądania, nic nie zapisując w bazie.</p>

<h2>Kto ma dostęp</h2>
<ul>
<li><strong>Zalogowani, aktywni klienci.</strong> Po włączeniu ograniczenia do grup wchodzą tylko konta z wybranych grup; pozostałe widzą komunikat o odmowie dostępu.</li>
<li><strong>Kody zaproszeń.</strong> Jeden kod w wierszu, z ważnością w dniach. Usunięcie kodu z listy unieważnia go natychmiast, także dla osób, które już go wpisały.</li>
<li><strong>Adresy IP z białej listy.</strong> Jeden adres lub zakres CIDR w wierszu, IPv4 i IPv6. Przydatne dla biura, podwykonawcy albo komputera testowego.</li>
<li><strong>Roboty wyszukiwarek</strong>, jeśli włączysz opcję. Googlebot, Bingbot, Applebot i DuckDuckBot są weryfikowane odwrotnym, a potem prostym DNS: fałszywy user agent nie przejdzie.</li>
</ul>

<h2>Wygląd strony prywatnej</h2>
<p>Zakładka Wygląd steruje oprawą. Dwa układy: pełny ekran, z kartą formularza po lewej, po środku lub po prawej stronie mediów, albo dzielony, z mediami po jednej stronie i formularzem po drugiej, o szerokości regulowanej od 35 do 70 procent.</p>
<p>Tło przyjmuje zdjęcie, pokaz dwóch lub trzech zdjęć z powolnym zoomem, wideo albo wideo i zdjęcie. Dla wideo: wgrany plik MP4 lub WebM (wyciszona pętla od 10 do 30 sekund, zalecane poniżej 8 MB), adres YouTube osadzany w trybie rozszerzonej prywatności albo adres Vimeo. Można ustawić osobne zdjęcie na telefony, gdzie media mogą stać się banerem nad formularzem, tłem albo zniknąć.</p>
<p>Pliki trafiają do <code>img/dfprivateshop/</code>, poza folder modułu, więc przetrwają aktualizacje. Następnie ustaw przyciemnienie, kolor akcentu, zaokrąglenie, styl karty (jasny, ciemny lub matowe szkło), logo i przełącznik języków. Przycisk Podgląd na pasku pokazuje stronę tak, jak widzą ją odwiedzający, bez zamykania sklepu.</p>
<div class=”df-callout tip”><p>Wideo domyślnie nie ładuje się na telefonach ani wtedy, gdy odwiedzający włączył oszczędzanie danych lub poprosił o mniej ruchu. Zawsze dodawaj więc zdjęcie: służy też jako plakat podczas ładowania.</p></div>

<h2>Prośby o dostęp i zatwierdzanie kont</h2>
<p>W zakładce Rejestracja decydujesz, czy zakładka prośby pojawia się na stronie prywatnej, jakie pola są dostępne (firma, identyfikator firmy lub NIP, data urodzenia, wiadomość, newsletter, oferty partnerów) i które są obowiązkowe. Pole zgody RODO może prowadzić do strony CMS; data akceptacji jest zapisywana razem z prośbą.</p>
<p>Przy ręcznym zatwierdzaniu każda rejestracja tworzy nieaktywne konto i wiersz w Klienci > Prośby o dostęp. Filtrujesz po statusie, źródle lub firmie, a następnie zatwierdzasz albo odrzucasz, pojedynczo lub zbiorczo. Klient dostaje odpowiedni e-mail w swoim języku. Adresy z domen, które wskażesz, mogą być zatwierdzane automatycznie, a twój zespół może otrzymywać powiadomienie o każdej nowej prośbie.</p>
<p>Karta klienta pokazuje prośbę i powiązane konta społecznościowe. Aktywowanie klienta z jego karty jest równoznaczne z zatwierdzeniem: status prośby się zmienia, a e-mail wychodzi.</p>

<h2>Logowanie przez Google, Facebooka, Apple i Instagram</h2>
<p>Każdy dostawca włącza się osobno w zakładce Logowanie społecznościowe. Skopiuj URI przekierowania z paska: u dostawcy trzeba go zadeklarować dokładnie w tej postaci.</p>
<ul>
<li><strong>Google</strong>: utwórz identyfikator OAuth typu aplikacja internetowa w Google Cloud Console, a potem przepisz ID klienta i klucz tajny.</li>
<li><strong>Facebook</strong>: utwórz aplikację w Meta for Developers, dodaj produkt Facebook Login, a potem przepisz ID i klucz tajny aplikacji.</li>
<li><strong>Apple</strong>: utwórz Services ID na koncie deweloperskim Apple, a następnie klucz Sign in with Apple. Potrzebne są Services ID, Team ID, Key ID oraz zawartość pliku .p8, wklejona w całości, razem z wierszami BEGIN i END.</li>
<li><strong>Instagram</strong>: Instagram Business Login uwierzytelnia tylko konta profesjonalne i nigdy nie zwraca adresu e-mail. Klient wpisuje go w krótkim formularzu po zalogowaniu.</li>
</ul>
<p>Jeśli zwrócony adres e-mail należy już do konta klienta, moduł prosi raz o hasło tego konta przed powiązaniem obu, chyba że wybrałeś automatyczne łączenie adresów potwierdzonych przez dostawcę. Przyciski mogą pojawiać się także na natywnej stronie logowania motywu.</p>
<div class=”df-callout warn”><p>Logowanie społecznościowe wymaga rozszerzenia PHP cURL i adresu przekierowania w HTTPS. Pasek konfiguracji sygnalizuje brak cURL i stan przyjaznych adresów URL.</p></div>

<h2>Pamięć podręczna stron</h2>
<p>Strony generowane dla odwiedzającego z dostępem są wysyłane z nagłówkami zakazującymi ich zapisu w pamięci podręcznej, także dla LiteSpeed, Varnisha i sieci CDN. Jeśli używasz modułu pamięci podręcznej stron, wyłącz w jego ustawieniach cache dla zalogowanych klientów: inaczej członek może otrzymać anonimową wersję strony, bez zarezerwowanych produktów lub cen. Pamięć podręczna Smarty jest czyszczona przy każdym zapisaniu ustawień modułu.</p>

<h2>Rozwiązywanie problemów</h2>
<ul>
<li><strong>Nie możesz wejść do własnego sklepu</strong>: dodaj do białej listy swój adres IP, pokazany na pasku konfiguracji.</li>
<li><strong>Przycisk dostawcy się nie pojawia</strong>: jest włączony, ale dane uwierzytelniające są niekompletne. Pasek konfiguracji to sygnalizuje.</li>
<li><strong>Logowanie społecznościowe zwraca błąd</strong>: sprawdź, czy URI przekierowania zadeklarowany u dostawcy jest dokładnie taki jak na pasku, razem z protokołem i subdomeną.</li>
<li><strong>Ceny nadal są widoczne</strong>: sprawdź, czy odwiedzający nie jest objęty białą listą IP albo kodem zaproszenia, i wyczyść pamięć podręczną stron.</li>
<li><strong>Produkt prywatny wciąż pojawia się w bloku</strong>: używany motyw prawdopodobnie nie stosuje oczekiwanej klasy product-miniature. Napisz do nas, podając nazwę motywu.</li>
</ul>

Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia