Connaissances sur les CMS, sites web et bonnes pratiques.
Conseils pour les rédacteurs de sites, actualités produit et bonnes pratiques pour créer des sites modernes avec Siteor CMS.
Sitemap, robots.txt i szablony Liquid - jak CMS generuje pliki SEO
Każda strona internetowa potrzebuje dwóch plików technicznych: sitemap.xml (mapa stron do indeksowania) i robots.txt (instrukcje dla crawlerów). Do niedawna logika generowania tych plików była zahardkodowana w kontrolerze. Teraz przenieśliśmy ją do edytowalnych szablonów Liquid.
Co się zmieniło
Generowanie plików SEO przeniesione z kontrolera do modelu Site. Trzy dedykowane metody:
- build_sitemap_data - zbiera strony, artykuły i wpisy bazy wiedzy w jedną strukturę danych do wyrenderowania XML
- build_robots_txt - generuje robots.txt z szablonu Liquid
- build_llms_txt - generuje llms.txt z szablonu Liquid (standard llmstxt.org dla botów AI)
Kontroler CMS wywołuje te metody i serwuje wynik. Logika jest testowalna osobno od warstwy HTTP.
robots.txt - szablon Liquid
Domyślny robots.txt wygląda tak:
User-agent: * Allow: / Disallow: /login Disallow: /signupSitemap:
Zmienna wstawia URL sitemapy z aktualnej domeny (np. https://siteor.net/sitemap.xml).
Chcesz zablokować dodatkowe ścieżki? Ustaw pole robots_txt w ustawieniach site'a z własnym szablonem. Masz dostęp do zmiennych: site, base_url, sitemap_url.
Przykład - blokada paginacji blogu (duplikaty treści):
User-agent: * Allow: / Disallow: /login Disallow: /signup Disallow: /blog/*?page=Sitemap:
sitemap.xml - trzy źródła danych
Sitemap generuje się automatycznie z:
- Strony CMS - wszystkie z
in_sitemap=true. Strony z przekierowaniem (redirect_to) automatycznie nie trafiają do sitemapy - Artykuły blogowe - opublikowane, z datami aktualizacji. URL budowany na podstawie ścieżki strony-rodzica z tagiem
<cms type="article"> - Wpisy bazy wiedzy - jeżeli strona CMS ma podpiętą bazę wiedzy, opublikowane wpisy trafiają do sitemapy
Poprawne URL-e artykułów
Sitemap automatycznie buduje pełne URL-e artykułów. Jeżeli masz stronę /blog z tagiem <cms type="article" category_code="news">, artykuł z category_code=news dostanie URL /blog/slug-artykulu.
System szuka stron z tagami article i buduje mapę category_code do ścieżki bazowej - w jednym zapytaniu do bazy, nie w pętli per artykuł. Szybkie nawet przy setkach artykułów.
URL z domeny requestu
URL-e w plikach SEO bierze się teraz z domeny, na którą przyszedł request - nie z konfiguracji konta. Strona na kilku domenach (np. siteor.net i siteor.fr) serwuje pliki z własnymi URL-ami per domena.
To eliminuje problem, gdy Googlebot wchodzi na jedną domenę, a sitemap zawiera URL-e drugiej.
Filtrowanie per język
Na stronach wielojęzycznych sitemap i llms.txt filtrują treść po locale domeny. Domena polska serwuje polskie strony, angielska - angielskie. Strony bez locale (uniwersalne) trafiają do obu.
Podgląd w preview
Wszystkie trzy pliki działają w trybie podglądu CMS:
/w/kod-site/sitemap.xml/w/kod-site/robots.txt/w/kod-site/llms.txt
Możesz sprawdzić ich zawartość zanim podepniesz domenę produkcyjną.
Normalizacja przekierowań
Przy okazji dodaliśmy normalizację pola redirect_to na stronach. Pusty string traktowany jest jak brak przekierowania - upraszcza to filtry i zapobiega sytuacji, gdy strona z pustym polem przypadkiem trafia do sitemapy.
Najczęściej zadawane pytania
Czym jest Siteor CMS?+
Siteor CMS to moduł do zarządzania stronami internetowymi w platformie Intum. Pozwala tworzyć i edytować strony przez panel administracyjny lub REST API. Obsługuje wielojęzyczność, SEO (sitemap, robots.txt, hreflang, Open Graph), szablony Liquid, blog z artykułami i integracje z bazami wiedzy.
Czym jest plik llms.txt?+
Plik llms.txt to nowy standard (llmstxt.org) opisujący zawartość strony internetowej dla botów AI takich jak ChatGPT, Claude czy Perplexity. Siteor CMS generuje go automatycznie dla każdego site'a na podstawie stron i artykułów.
Czy Siteor CMS obsługuje wiele języków?+
Tak. Siteor CMS ma wbudowaną wielojęzyczność: strony master/slave z dziedziczeniem treści, osobne domeny per język z automatycznym hreflang, redirect 301 między wersjami językowymi i filtrowanie sitemapy po locale domeny. Obsługiwane języki: pl, en, fr, de, es, cs, sk, uk.
Czy CMS generuje sitemap.xml automatycznie?+
Tak. Sitemap.xml, robots.txt i llms.txt generują się automatycznie z szablonów Liquid. Sitemap zawiera strony, artykuły blogowe i wpisy bazy wiedzy. Szablony można nadpisać przez ustawienia site'a bez zmian w kodzie.
Jak działa Open Graph w Siteor CMS?+
Tagi Open Graph i Twitter Card generują się automatycznie na podstawie pól SEO strony lub artykułu. Wystarczy że layout zawiera zmienną Liquid seo_head w sekcji head. Artykuły blogowe dostają typ article z własnym tytułem, opisem i obrazkiem.