Zaawansowany generator Sitemap SEO: konfiguracja i pomoc
Szybki start
- Prześlij i zainstaluj ZIP w Moduły > "Module Manager", a następnie kliknij "Configure".
- Otwórz "Sitemap Builder" > "Settings" > Konfiguracja > Zawartość i wybierz potrzebne źródła.
- Sprawdź Opcje i pozostaw Zweryfikuj adresy URL (przeskanuj każdą stronę) włączone przy pierwszym uruchomieniu.
- Sprawdź ustawienia crawlera i skopiuj URL cron z sekcji Bezpieczeństwo.
- Otwórz "Sitemap Builder", kliknij Generuj mapę strony i poczekaj na zakończenie.
- Otwórz URL mapy witryny z panelu oraz plik podrzędny i potwierdź obecność znanego produktu.
- Prześlij stały URL mapy witryny w narzędziach dla webmasterów i zaplanuj wywoływanie URL cron w celu ponownego generowania.
Wymaga PrestaShop 1.7.6.0 lub nowszego oraz PHP 7.1 lub nowszego.
Wymagane są PHP cURL i możliwość zapisu w katalogu map witryny.
Instrukcja konfiguracji
Instalacja i otwieranie modułu
Prześlij ZIP w Moduły > "Module Manager" > "Upload a module". Zainstaluj moduł i kliknij "Configure". Ustawienia znajdziesz w "Sitemap Builder" > "Settings" > Konfiguracja. "Sitemap Builder" służy do generowania, "Sitemap URLs" do rekordów URL i własnych reguł, a "Sitemap Logs" do informacji audytowych.
Wymaga PrestaShop 1.7.6.0 lub nowszego oraz PHP 7.1 lub nowszego.
PHP cURL jest potrzebne do weryfikacji i żądań ping. Proces PHP musi mieć możliwość zapisu w /modules/mprsitemapbuilder/sitemaps/.
Konfiguracja treści
Otwórz kartę Zawartość. Strona główna jest wykrywana automatycznie. Pozostałe treści wybierz za pomocą tych przełączników.
| Ustawienie | Domyślnie | Co skonfigurować |
|---|---|---|
| Produkty | Tak | Uwzględnij aktywne produkty z widocznością both, search lub catalog. Stan magazynowy nie wyklucza produktu. |
| Kategorie | Tak | Uwzględnij aktywne kategorie poza skonfigurowaną kategorią główną i kategorią strony głównej. |
| Strony CMS | Tak | Uwzględnij aktywne strony CMS. |
| Producenci | Nie | Włącz, aby wykrywać strony aktywnych producentów. |
| Dostawcy | Nie | Włącz, aby wykrywać strony aktywnych dostawców. |
| Strony systemowe | Tak | Uwzględnij stronę kontaktową. |
W Priorytet i częstotliwość > Według typu treści ustaw Priorytet i Częstotliwość dla każdego wiersza. Zmień te wartości, jeśli potrzebujesz innych metadanych XML.
| Typ treści | Domyślny priorytet | Domyślna częstotliwość |
|---|---|---|
| Strona główna | 1.0 | daily |
| Produkty | 0.8 | weekly |
| Kategorie | 0.7 | weekly |
| Strony CMS | 0.5 | monthly |
| Producenci | 0.4 | monthly |
| Dostawcy | 0.3 | monthly |
| Strony systemowe | 0.3 | monthly |
Priorytet można wybrać od 0.0 do 1.0. Dostępne częstotliwości to Zawsze, Co godzinę, Dzienny, Tygodniowy, Miesięczny, Raz w roku i Nigdy. Są to wartości mapy witryny, a nie harmonogramy ponownego generowania.
Strona kontaktowa zawsze używa priorytetu 0.3, niezależnie od ustawienia priorytetu Strony systemowe. Częstotliwość nadal odpowiada ustawionej wartości.
Konfiguracja opcji
| Ustawienie | Domyślnie | Działanie i kiedy zmienić |
|---|---|---|
| Uwzględnij mapy witryn obrazów | Tak | Dodaj adresy URL i tytuły zdjęć produktów jako wpisy image:image. Uwzględniane są tylko zdjęcia produktów. |
| Uwzględnij linki hreflang | Tak | Dodaj alternatywy xhtml:link dla zgodnych identyfikatorów encji w aktywnych językach. Pozostaw włączone dla wyników wielojęzycznych. |
| Zweryfikuj adresy URL (przeskanuj każdą stronę) | Tak | Sprawdzaj odpowiedzi HTTP, dyrektywy robots i kanoniczne adresy URL. Po wyłączeniu oczekujące adresy są akceptowane bez tych kontroli. |
| Generuj mapę strony HTML | Tak | Włącz integrację zweryfikowanych adresów z hookiem mapy witryny we front office. Moduł udostępnia także /module/mprsitemapbuilder/htmlsitemap. |
| Generuj kanał RSS | Nie | Utwórz RSS z maksymalnie 100 zweryfikowanych adresów, uporządkowanych według ostatniej modyfikacji. Włącz, jeśli potrzebujesz kanału. |
| Wyślij ping do Google po wygenerowaniu | Tak | Wysyła żądanie do punktu końcowego ping map witryn Google. Google wycofało ten punkt końcowy w 2023 roku, więc zgłoś mapę witryny w Search Console. |
| Wyślij ping do Bing po wygenerowaniu | Tak | Wysyła żądanie do punktu końcowego ping map witryn Bing. Bing nie przyjmuje już tych pingów, więc zgłoś mapę witryny w Bing Webmaster Tools. |
Osobny kontroler mapy HTML oznacza stronę jako noindex. Jego bezpośredni URL odczytuje zweryfikowane adresy; przełącznik HTML steruje wspólną integracją mapy witryny we front office. Nie traktuj przełącznika jako kontroli dostępu do tego adresu.
Konfiguracja crawlera i zabezpieczeń
| Ustawienie crawlera | Domyślnie | Działanie i kiedy zmienić |
|---|---|---|
| Równoczesne żądania | 3 | Weryfikator wymusza od 1 do 3 równoczesnych żądań. Zmniejsz, aby ograniczyć obciążenie. |
| Opóźnienie partii (ms) | 500 | Weryfikator wymusza co najmniej 500 ms między partiami. Zwiększ, aby ograniczyć obciążenie. |
| Limit czasu żądania (s) | 10 | Weryfikator wymusza co najmniej 3 sekundy. Zwiększ, jeśli serwer odpowiada wolno. |
| Używaj ponownie walidacji przez | 30 dni | Wykorzystuj niedawną pomyślną walidację niezmienionych adresów, gdy dostępny jest wspólny prewalidator. Nowe, zmienione, nieaktualne, próbkowane i wcześniej błędne adresy nadal wymagają kontroli HTTP. |
| Próbka kontroli HTTP | 2% | Zarezerwuj próbkę adresów nadających się do ponownego wykorzystania walidacji na nową kontrolę HTTP. Zwiększ przy sprawdzaniu szerokich zmian szablonów lub proxy. |
| Maks. URL na plik | 50000 | Dziel wynik po osiągnięciu skonfigurowanej liczby adresów. Mniejsza dodatnia wartość daje mniejsze pliki. Mechanizm zapisu sprawdza także próg rozmiaru 50 MiB. |
| Minimalny odstęp między generowaniami (s) | 3600 | Pomijaj żądania cron wysłane zbyt wcześnie po ostatnim zakończonym generowaniu. Ustaw dodatni odstęp odpowiedni do harmonogramu. Zapisane zero powoduje użycie 3600. |
Mechanizm zapisu tworzy numerowane pliki i indeks. W tej wersji nie ma przełącznika "Split into multiple files".
W sekcji Bezpieczeństwo pole Token cron początkowo zawiera losową 32-znakową wartość szesnastkową. Skopiuj URL cron do harmonogramu. Regeneruj token unieważnia stary URL. Po użyciu tej funkcji zaktualizuj każdy harmonogram.
Dodawanie własnych adresów i wykluczeń
Otwórz "Sitemap URLs". Dodaj regułę Uwzględnij dla strony docelowej niewykrywanej automatycznie. Wybierz jej priorytet. Formularz zapisuje własne włączenia z częstotliwością tygodniową i powtarza podany URL dla aktywnych języków.
Dodaj regułę Wyklucz, aby pominąć wykryty adres. Obsługiwane są dokładne dopasowania i wzorce prefiksowe zakończone *. Na przykład:
https://your-store.com/private-page
https://your-store.com/search?*
https://your-store.com/module/example/*
Po zmianie reguł wygeneruj mapę ponownie. Sprawdź powstałe rekordy URL. Unikaj jednoczesnego włączania i wykluczania tego samego własnego adresu: reguły wykluczania nie usuwają własnych włączeń.
Generowanie i publikacja mapy witryny
Kliknij Generuj mapę strony w panelu. Pozostaw stronę generowania otwartą do zakończenia wykrywania, weryfikacji, zapisu i czynności końcowych. Sprawdź ostatni status, uwzględnione i pominięte adresy, błędy, liczbę plików oraz czas trwania.
Standardowy publiczny URL indeksu to:
https://your-store.com/module/mprsitemapbuilder/sitemap
Użyj rzeczywistego adresu wyświetlanego przez sklep. Dla sklepu 1 wygenerowane pliki mają nazwy takie jak sitemap_index_1.xml, sitemap_1_1.xml i rss_1.xml. Publiczny kontroler może udostępniać numerowany plik lub kanał przez ?file=FILENAME.
Otwórz indeks i przejdź do jednej mapy podrzędnej. Sprawdź znany produkt, jego wersje językowe i wpisy obrazów. Wpisy XML obejmują loc, dostępne lastmod, częstotliwość i priorytet. Obrazy produktów używają image:loc i opcjonalnego image:title.
Gdy indeks istnieje, moduł dodaje odnośnik rel="sitemap" przez displayHeader. Możesz też dodać ten wiersz do pliku robots.txt sklepu, podając rzeczywisty URL mapy:
Sitemap: https://your-store.com/module/mprsitemapbuilder/sitemap
Prześlij ten stały adres w narzędziach dla webmasterów wyszukiwarki. Generowanie nie tworzy fizycznego pliku /sitemap.xml w katalogu głównym. Jeśli potrzebujesz aliasu w katalogu głównym, skonfiguruj i przetestuj przekierowanie. Przykład Apache dla sklepu w katalogu głównym domeny:
RewriteRule ^sitemap\.xml$ /module/mprsitemapbuilder/sitemap [R=302,L]
Dostosuj go do instalacji w podkatalogach i kontekstu reguł przepisywania serwera.
Planowanie ponownego generowania
Dodaj zadanie cron na serwerze, używając URL cron. Na przykład zastąp URL i token rzeczywistymi wartościami:
0 * * * * curl -fsS "https://your-store.com/module/mprsitemapbuilder/cron?token=YOUR_CRON_TOKEN" >/dev/null
Moduł nie tworzy harmonogramu serwera. Punkt końcowy wykonuje generowanie synchronicznie. Zwraca JSON, odrzuca nieprawidłowy token kodem HTTP 403 i pomija generowanie już trwające lub przypadające w skonfigurowanym odstępie. Trwające generowanie starsze niż 1800 sekund może zostać oznaczone jako przekroczony limit czasu przy późniejszym żądaniu cron.
Integracja innego modułu
Aby dostarczać adresy, zarejestruj gSitemapAppendUrls we własnym module i zwracaj rekordy URL. Kolektor przekazuje do hooka id_shop i id_lang.
public function hookGSitemapAppendUrls(array $params)
{
return [[
'link' => $this->context->link->getModuleLink($this->name, 'post', ['id_post' => 123]),
'lastmod' => date('Y-m-d H:i:s'),
'priority' => 0.5,
'changefreq' => 'weekly',
]];
}
Aby reagować po generowaniu, zarejestruj actionMprSitemapGenerated. Jego parametry obejmują id_generation, total_included i total_skipped.
public function hookActionMprSitemapGenerated(array $params)
{
$generationId = (int) $params['id_generation'];
$included = (int) $params['total_included'];
$skipped = (int) $params['total_skipped'];
}
Rozwiązywanie problemów z generowaniem
Jeśli publiczny URL wyświetla "Sitemap not generated yet", zakończ pierwsze generowanie i sprawdź uprawnienia katalogu. Jeśli weryfikacja wszystkich kandydatów się nie powiedzie, generowanie kończy się błędem i zachowuje poprzednią mapę zamiast zastępować ją pustym wynikiem.
Sprawdź "Sitemap URLs" i "Sitemap Logs" pod kątem statusu, kodu HTTP, kanonicznego adresu, informacji noindex i czasu weryfikacji. Przyczyny obejmują non_200, canonical_mismatch, noindex_meta, noindex_header, timeout i curl_error.
Klient HTTP podąża za przekierowaniami. Samo przekierowanie nie powoduje automatycznego wykluczenia. Przy badaniu przekierowanego adresu sprawdź końcową odpowiedź HTTP i porównanie adresów kanonicznych. Weryfikacja nie sprawdza uprawnień do skanowania z robots.txt.
Przy wolnym generowaniu zmniejsz współbieżność, zwiększ opóźnienie lub sprawdź limity czasu. Przetestuj łączność z serwera sklepu. Przy błędach cron sprawdź token, stan trwającego generowania, minimalny odstęp i limit czasu harmonogramu. Do kontroli modułu użyj "Settings" > "Integrity".
Wyłączenie lub odinstalowanie
Wyłącz moduł w "Module Manager", jeśli chcesz tymczasowo zatrzymać jego hooki. Usuń zadanie cron z serwera, gdy przestaniesz go używać.
Odinstalowanie usuwa menu administracyjne i konfigurację modułu. Pięć tabel map witryny jest usuwanych, chyba że zainstalowano mprseorevolution; wtedy wspólne tabele zostają zachowane. Odinstalowanie nie usuwa jawnie wygenerowanych plików XML. Usuń osobno nieaktualne publiczne odwołania i wygenerowane pliki, jeśli nie chcesz, aby nadal były udostępniane bezpośrednio.
Pytania
Brak pytań o ten moduł
Zapytaj o instalację, zgodność lub konfigurację. Odpowiedzi pojawią się tutaj.
Znane problemy
11
Generowanie sitemapy zawiesza się w sklepach z 50K+ produktów
Generator sitemapy działa jako pojedynczy proces i przy dużych katalogach z wieloma kombinacjami i zdjęciami przekracza limity pamięci PHP.
Informacja o rozwiązaniu
Zaimplementowano generowanie porcjami przez cron, przetwarzające 2000 adresów URL na uruchomienie. Zużycie pamięci pozostaje poniżej 128MB niezależnie od wielkości katalogu.
Brakujące tłumaczenia
Zgodność ładowania z PHP 7.1
Deinstalacja usuwała współdzielone dane mapy witryny
Panel administracyjny modułu mógł się nie otwierać
Mapy witryn zawierały nieodpowiednie strony
Niewłaściwa mapa witryny wskazywana w trybie multisklep
Wykrywanie CMS nie działało w PrestaShop 9.1
Przycisk generowania nie działał
Nieudane generowanie mogło pozostawiać puste mapy witryny
Brak dat modyfikacji w adresach URL mapy witryny
Zgłoszenia funkcji
5
Zaimplementowane
Walidacja mapy witryny dla każdego generowania
Mapy witryny ze zdjęciami produktów
Ustawienia mapy witryny według typu treści
Wznawialne wykrywanie stron mapy witryny
Weryfikacja mapy witryny
Dziennik zmian
v1.2.122026-07-07
- Certified the current release package for download.
- Synced the integrity package used by the admin diagnostics tab.
- Refreshed DE/FR/ES/IT/PL translations.
Starsze wersje
v1.2.142026-05-27
- AddedAdd generation-scoped sitemap validation
- Addedcomplete FR/DE/ES/IT/PL translations
- ImprovedMigrate all config from ps_configuration to ConfigTable
- FixedEnsure lastmod is never null in sitemap URL providers
v1.2.62026-05-12
- Addedgeneration-scoped URL validation so the report and sitemap output are tied to the same generation run.
- AddedURL validation reuse, sample controls and cron frequency/concurrency guards.
- Improvedsitemap prevalidation before writing output files.
v1.2.42026-04-13
- Addedone-click remote update package integration.
- Addedself-healing infrastructure checks and admin tab repair support.
v1.2.02026-04-12
- AddedURL health checks before inclusion.
- Addedhreflang alternate links for multilingual shops.
- Addedconfigurable priority/changefreq hints and Google/Bing ping support after generation.
Demo
Przetestuj pełny moduł przed zakupem
Licencję kupisz później, a ustawienia zostaną.
- Twoje 30-dniowe demo Przetestuj go we własnym sklepie przez 30 dni od pierwszej instalacji.
- Gotowy sklep demo Poznaj gotowy sklep demo w przeglądarce.
- Bez rejestracji Bez konta, adresu e-mail ani domeny sklepu.
Pobierając, akceptujesz warunki dema i politykę prywatności.
Otwierając to demo, akceptujesz regulamin wersji demo oraz politykę prywatności.