Problem może wystąpić przy włączonej opcji multistore lub nie – ciężko to nam było ustalić.
W każdym razie w dziale:
Zaplecze sklepu (admin) -> Moduły i usługi -> Pozycje
Gdy zmieniamy ułożenie modułów np. w lewej kolumnie (nazwa kodowa: displayLeftColumn ) przez „przeciągnij i upuść” (myszką), to mimo komunikatu, że zmieniono – po przeładowaniu strony zmian nie widać. Tak samo na stronie sklepu – kolejność modułów w tej kolumnie jest nie zmieniona.
Można na szczęście poprawić to w bazie danych.
Logujemy się do phpmyadmin. Jak to zrobić opisywaliśmy np. w artykule: https://pskrk.com/naprawa-bledu-zakresy-nachodza-na-siebie-w-presta-shop/
Po zalogowaniu do tego programu wybieramy naszą bazę danych i postępujemy wg poradnika poniżej.
Zawartość artykułu
1) Ustalenie ID modułu który chcemy przesunąć na inne miejsce
Wywołujemy polecenie SQL:
SELECT * FROM `ps_module` LIMIT 0 , 300
Zapisujemy numer modułu, który chcemy przesunąć. Niech to będzie np. „Blok kategorii”:
+-----------+-----------------+--------+---------+ | id_module | name | active | version | +-----------+-----------------+--------+---------+ | 10 | blockcategories | 1 | 2.9.4 | +-----------+-----------------+--------+---------+
Czyli ID = 10
2) Ustalenie id naszego Hooka (obszaru gdzie są przyczepione moduły) W naszym przypadku będzie to lewa kolumna.
SELECT * FROM `ps_hook` ORDER BY `ps_hook`.`name` ASC
Znajdujemy nasz hook na liście. W naszym przypadku będzie to jak wyżej napisaliśmy – lewa kolumna. Jej nazwa kodowa to:
+---------+-------------------+--------------------+-------------+----------+-----------+ | id_hook | name | title | description | position | live_edit | +---------+-------------------+--------------------+-------------+----------+-----------+ | 7 | displayLeftColumn | Left column blocks | NULL | 1 | 1 | +---------+-------------------+--------------------+-------------+----------+-----------+
Czyli ID = 7.
3) finał – ustawienie kolejności.
Ok, mamy już wszystko co potrzeba, aby zmienić kolejność. Wywołujemy tę komendę aby wyświetlić wszystkie moduły w obrębie naszego hooka. Używamy tutaj id hooka ustalone w pkt. 2) powyżej.
Uwaga – dodatkowo należy podać ID sklepu. Ustalisz to w dziale: Zaplecze sklepu (admin) -> Zaawansowane -> Multisklep
SELECT * FROM `ps_hook_module` WHERE `id_hook` =7 AND `id_shop` =1 ORDER BY `ps_hook_module`.`position` ASC
Wynikiem naszego zapytania jest lista modułów w obrębie tego hooka.
Aby zmienić pozycję modułu – np. przesunąć go na samą górę – kliknij w pole „position” w wierszu gdzie on się znajduje (ID modułu ustaliliśmy w pkt1) powyżej) i zmień wartość na 1.