Uruchomiłeś nowy sklep w trybie multistore w PrestaShop i zauważyłeś, że brakuje w nim podstawowych stron, takich jak „Kontakt z nami”, „Mapa strony” czy „Nowe produkty”? To częsty problem, który sprawia, że klienci nie mogą dotrzeć do kluczowych informacji, a Twój nowy sklep traci na funkcjonalności.
Zazwyczaj problem objawia się na dwa sposoby:
Przyczyną jest to, że PrestaShop podczas tworzenia nowego sklepu nie zawsze automatycznie kopiuje konfiguracje URL dla stron generowanych przez moduły. Innymi słowy, w bazie danych brakuje wpisów, które mówią PrestaShop, że strona „kontakt” ma istnieć również dla tego nowego sklepu.
Zamiast ręcznie odtwarzać każdą brakującą stronę, możemy w kilka sekund sklonować wszystkie ustawienia z działającego sklepu do tego nowego. Wystarczy do tego jedno zapytanie do bazy danych.
Zanim wykonasz jakiekolwiek zmiany, zabezpiecz się. W swoim narzędziu do zarządzania bazą danych (np. DBeaver, phpMyAdmin) wykonaj poniższą komendę, aby stworzyć kopię zapasową tabeli z ustawieniami URL.
CREATE TABLE ps_meta_lang_backup AS SELECT * FROM ps_meta_lang;
Musisz znać id_shop obu sklepów: tego, który działa poprawnie (będzie on źródłem) i tego, w którym brakuje stron (sklep docelowy). Numery ID znajdziesz w tabeli ps_shop w bazie danych.
Teraz wykonaj poniższy kod SQL. Pamiętaj, aby podmienić id_shop na właściwe dla Twojej instalacji. W naszym przykładzie kopiujemy ustawienia ze sklepu o id_shop = 1 do sklepu o id_shop = 5.
INSERT INTO ps_meta_lang (id_meta, id_shop, id_lang, title, description, keywords, url_rewrite)
SELECT
ml.id_meta,
5 AS id_shop, -- <-- WSTAW TUTAJ ID SKLEPU, W KTÓRYM BRAKUJE STRON
ml.id_lang,
ml.title,
ml.description,
ml.keywords,
ml.url_rewrite
FROM ps_meta_lang ml
WHERE ml.id_shop = 1 -- <-- WSTAW TUTAJ ID SKLEPU, KTÓRY DZIAŁA POPRAWNIE
AND NOT EXISTS (
SELECT 1
FROM ps_meta_lang ml2
WHERE ml2.id_shop = 5 -- <-- PONOWNIE WSTAW ID SKLEPU NAPRAWIANEGO
AND ml2.id_meta = ml.id_meta
AND ml2.id_lang = ml.id_lang
);
Co robi to zapytanie? W skrócie: inteligentnie kopiuje brakujące wpisy. Wybiera wszystkie konfiguracje stron ze sklepu źródłowego, a następnie sprawdza (NOT EXISTS), czy dana strona istnieje już w sklepie docelowym. Jeśli nie, dodaje ją. To gwarantuje, że nie powstaną żadne duplikaty.
Aby PrestaShop zobaczył zmiany w bazie danych, musisz wyczyścić cache.
var/cache/prod na serwerze.I to wszystko! Po odświeżeniu strony wszystkie brakujące podstrony powinny pojawić się w Twoim nowym sklepie, a lista w panelu SEO & URL będzie kompletna.

Programista Java i twórca stron internetowych oraz sklepów opartych na WordPressie i PrestaShop. Specjalizuje się w budowie wydajnych aplikacji webowych i systemów CRM, integrując backend z funkcjonalnym i intuicyjnym frontendem. Tworzy nowoczesne strony i sklepy dostosowane do potrzeb biznesu, dbając o SEO, UX oraz bezpieczeństwo. Łączy wiedzę techniczną z praktycznym podejściem do rozwiązywania realnych problemów firm.

