Press "Enter" to skip to content

PrestaShop – dodanie nowej grupy klientów i błąd „Nie masz dostępu do tej kategorii”

Admin 0

Jak ten błąd się pojawia?

Na początek przedstawmy jak ten błąd powstaje w naszym sklepie internetowym (tutaj: PrestaShop 1.7.8.2).

Powiedzmy, że dodajemy nową grupę klientów „Zweryfikowani” do naszego sklepu. Będą tam umieszczani jedynie klienci do których mamy zaufanie, którym chcemy pokazać inne ceny, partnerzy itp. – nie ma to znaczenia. Po prostu dla własnych celów dodajemy taką nową grupę.

Grupę deklarujemy w:

Konfiguruj -> Preferencje -> Klienci -> Grupy

Ustawiamy tam jak mają być prezentowane ceny (brutto, netto), czy mają być zniżki itp. (nie ma to tutaj też znaczenia).

Jak już mamy nową grupę, przy edycji danego klienta mamy opcje do wyboru:

I co ważne musimy zdeklarować jak na screenie „Domyślną grupę klientów”. Co ciekawe nie moze być to któraś z wbudowanych w sklep, bo wyświetla się błąd:

No OK, to dla danego klienta wybieramy jako domyślą – tę nowo dodaną grupę „Zweryfikowani”.

Jak sama nazwa wskazuje jest to grupa klientów o wyższej randze niż domyślne grupy (wbudowane w sklep):

  • Odwiedzający
  • Gość
  • Klient

Czyli powinien taki klient ma mieć dostęp do całego sklepu itd.

Niestety nie ma.

Ku naszemu zaskoczeniu, po zalogowaniu na konto takiego klienta nie możemy wyświetlić żadnej kategorii:

Czyli pojawia sie zamiast listy produktów powyższy komunikat … (WTF??)

Zmiana uprawnień kategorii

Oczywiście problem rozwiąże edycja danej kategorii i dodanie do niej uprawnień dla tej grupy. Czyli wybieramy dodatkową nie wybraną opcję „Zweryfikowani”

Zaznaczając ostatnią kratkę:

+ zapisujemy kategorię i super – wszystko działa. Kategorię już można wyświetlić.

No OK, ale co z resztą kategorii? Sprawa jest prosta jak mamy kilkanaście kategorii. Ale co jeśli mamy – klikaset (jak nie kilka tys. kategorii) ?? Musimy tę czynność powielić tak gigantyczną ilość razy?

…na szczęście jak to zwykle bywa – wystarczy zastosowanie odp. zapytania SQL 🙂

Zapytanie SQL, które nas ratuje.

Pierwszy krok.

Najpierw musimy ustalić ID tej nowej grupy.

Wejdź w dział:

Konfiguruj -> Preferencje -> Klienci -> Grupy

i zanotuj ID tej nowej grupy. W naszym przypadku będzie to: 4

Drugi krok

koniecznie wykonaj kopię zapasową sklepu. Zrobisz to w

Zaawansowane -> Baza danych -> Kopia zapasowa DB

Trzeci krok

Ustal lokalizację PHPmyAdmin na Twoim serwerze, aby móc wykonać zapytanie SQL

Lub wgrać wykonaną wyżej kopię bezpieczeństwa jak coś się popsuje 😛

Ostatni krok – zapytanie SQL.

OK teraz możemy przystąpić do zapytania, które jest dla nas zbawienne.

Na początek usuń wszystkie przyznane już uprawnienia dla tej nowej grupy. I tak je nadpiszemy:

DELETE FROM `ps_category_group` WHERE id_group = 4;

Następnie dodajemy odp. rekordy wiążące każdą kategorię z grupą o ID = 4:

INSERT INTO `ps_category_group`(`id_category`, `id_group`) SELECT `id_category`,4 FROM `ps_category` WHERE id_category > 2;

Gotowe! W tym momencie każda kategoria powinna być dostępna dla każdego klienta zalogowanego i dodanego do grupy „Zweryfikowani”.

Konkluzja

Ważna uwaga: podczas deklarowania nowej kategorii w sklepie koniecznie zaznacz kratkę „Zweryfikowani”. Domyślnie będzie ona odznaczona i problem dla tej nowej kategorii powróci.

Pamiętaj – w przypadku dodania nowej grupy klientów – należy powielić te czynności, aby klienci do niej przypisani mieli dostęp do kateogrii.

 

grafika: alphacoders.com

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

Zobacz także !
Bład z pobieraniem detali zamówienia - jak to rozwiązać?