feat: sitemap settings singleton with content types and additional addresses

- one settings tile opening the golem15.sitemap.settings singleton
- Files tab (site address, file size, S1 files partial), Additional
  addresses repeater, Content types tab built from signpost at boot
- golem15_sitemap_types; a type switched off leaves the files (reason type)
- a save validates (errors.*) and dispatches a rebuild after commit
This commit is contained in:
Jakub Zych
2026-11-04 11:06:29 +01:00
parent 3359f1a196
commit 3ba70bb69f
20 changed files with 1304 additions and 337 deletions

View File

@@ -1,6 +1,6 @@
plugin:
name: Mapa strony
description: Generuje plik sitemap.xml dla Twojej strony.
name: Mapy witryny
description: Mapy XML według typów treści, ze stałymi plikami, prawdziwym lastmod i hreflang.
permissions:
access_settings: Zarządzaj ustawieniami wtyczki
access_definitions: Zarządzaj definicją mapy strony
@@ -41,29 +41,80 @@ errors:
url_scheme: Podaj ścieżkę, np. /o-nas, albo link zaczynający się od http:// lub https://.
url_pattern: Podaj ścieżkę zaczynającą się od jednego /, np. /blog/:slug.
frontend_url: 'Podaj pełny adres zaczynający się od http:// lub https://, bez spacji, cudzysłowów i znaków < > &. Zostaw puste, aby zachować adres backendu.'
file_size: Wpisz liczbę całkowitą od 1 do 50 000.
slug: Użyj małych liter, cyfr i łączników, np. posts.
slug_taken: Inny typ treści już używa tej nazwy pliku.
html_path: Zacznij adres od / i użyj samej ścieżki, np. /mapa-strony.
page_size: Wpisz liczbę całkowitą od 50 do 500.
lastmod: 'Wpisz datę w formacie RRRR-MM-DD, np. 2026-10-28, albo zostaw puste.'
definition:
not_found: Nie znaleziono definicji mapy strony. Musisz ją utworzyć.
title: Definicja mapy strony
view: Zobacz sitemap.xml
settings:
label: Ustawienia mapy strony
description: Adres frontendu, język i priorytety.
label: Mapy witryny
description: Mapy XML według typów treści, obrazy, News, IndexNow i mapa HTML.
category: CMS
frontend_url: Adres URL frontendu
frontend_url_comment: Publiczny adres aplikacji frontendowej (np. https://www.example.com). Gdy jest ustawiony, adresy w mapie strony używają tej domeny zamiast adresu backendu.
frontend_default_locale: Domyślny język frontendu
frontend_default_locale_comment: Język bez prefiksu na frontendzie (np. pl przy strategii prefix_except_default). Pozostałe języki dostają w mapie strony prefiks /{kod}/.
updates_manifest_path: Ścieżka manifestu aktualizacji
updates_manifest_path_comment: Bezwzględna ścieżka do pliku JSON, który mapuje ścieżkę URL na datę ostatniej zmiany ISO 8601, tworzonego przez build frontendu. Służy jako <lastmod> dla pozycji URL bez własnej daty (np. stron statycznych). Gdy jest pusta lub plik jest nieczytelny, te pozycje nie mają <lastmod>. Zestawy dynamiczne zachowują własne daty.
enable_priority_tiers: Włącz poziomy priorytetów
enable_priority_tiers_comment: Po włączeniu priorytety są nadawane według reguł ścieżek URL z konfiguracji i zastępują priorytety pozycji. Po wyłączeniu używane są priorytety pozycji.
priority_homepage: Priorytet strony głównej
priority_homepage_comment: Dla adresów pasujących do reguł poziomu strony głównej z konfiguracji. Domyślnie 1.0. Działa tylko przy włączonych poziomach priorytetów.
priority_services: Priorytet usług i realizacji
priority_services_comment: Dla adresów pasujących do reguł poziomu usług z konfiguracji. Domyślnie 0.8. Działa tylko przy włączonych poziomach priorytetów.
priority_blog: Priorytet wpisów bloga
priority_blog_comment: Dla adresów pasujących do reguł poziomu bloga z konfiguracji. Domyślnie 0.6. Działa tylko przy włączonych poziomach priorytetów.
priority_categories: Priorytet kategorii i stron zbiorczych
priority_categories_comment: Dla adresów pasujących do reguł poziomu kategorii z konfiguracji. Domyślnie 0.4. Działa tylko przy włączonych poziomach priorytetów.
priority_legal: Priorytet stron prawnych
priority_legal_comment: Dla adresów pasujących do reguł poziomu stron prawnych z konfiguracji. Domyślnie 0.2. Działa tylko przy włączonych poziomach priorytetów.
tab_files: Pliki
tab_types: Typy treści
tab_extra: Dodatkowe adresy
tab_media: Obrazy i News
tab_indexnow: IndexNow
tab_html: Mapa HTML
site_url: Adres witryny
site_url_comment: Publiczny adres witryny, np. https://www.example.com. Od niego zaczyna się każdy adres w mapach.
file_size: Adresów w pliku
file_size_comment: Domyślnie 1000, najwyżej 50 000. Mniejsze pliki łatwiej monitorować pojedynczo w Google Search Console. Zmiana przenumerowuje wszystkie pliki.
type_include: Uwzględniaj ten typ treści w mapach witryny.
type_slug: Nazwa pliku
type_slug_comment: Pliki nazywają się sitemap-<nazwa>-1.xml, sitemap-<nazwa>-2.xml i tak dalej.
type_title: Nagłówek grupy w mapie HTML
extra_urls: Dodatkowe adresy
extra_urls_add: Dodaj adres
extra_urls_comment: Adresy, których nie podaje żaden typ treści, np. statyczne strony witryny. Trafiają do plików sitemap-pages.
extra_url: Adres
extra_url_lastmod: Ostatnia zmiana
extra_url_lastmod_comment: 'Opcjonalnie, w formacie RRRR-MM-DD, np. 2026-10-28.'
images_enabled: Mapa obrazów
images_enabled_comment: Wypisuje obraz wyróżniający i obrazy w treści każdej podanej strony, w plikach sitemap-images.
news_enabled: Mapa Google News
news_enabled_comment: Tylko dla witryn przyjętych do Google News. Wypisuje artykuły opublikowane w ciągu ostatnich dwóch dni.
news_publication: Nazwa publikacji
news_publication_comment: 'Tak jak w Google News. Puste: nazwa witryny.'
news_sources: Typy i kategorie
news_sources_comment: 'Artykuły tych typów lub kategorii trafiają do mapy News. Puste: każdy typ artykułów.'
indexnow_enabled: IndexNow
indexnow_enabled_comment: Od razu informuje Bing, Yandex i inne wyszukiwarki IndexNow o nowych, zmienionych i usuniętych adresach. Google nie korzysta z IndexNow.
indexnow_new_key: Wygeneruj nowy klucz przy zapisie
indexnow_new_key_comment: Stary plik klucza od razu przestaje działać. Używaj tylko, gdy klucz wyciekł.
html_enabled: Mapa witryny HTML
html_enabled_comment: Strona dla odwiedzających z listą wszystkich indeksowalnych adresów, linkowana ze stopki witryny.
html_path: Adres
html_path_comment: Strona mapy witryny używa tego adresu. Zmień go także w witrynie.
html_page_size: Linków na stronie
html_page_size_comment: Większe grupy są dzielone na numerowane strony. Domyślnie 150.
files:
label: Pliki
file: Plik
file_urls: Adresy
file_lastmod: Ostatnia zmiana
left_out: Pominięte w mapach witryny
left_out_reason: Powód
left_out_count: Adresy
reason_noindex: noindex
reason_canonical: Adres kanoniczny wskazuje inny adres
reason_redirect: Adres przekierowuje
reason_type: Wyłączony typ treści
index_note: Wyszukiwarki czytają indeks pod :url, a robots.txt go wskazuje. Pliki są odbudowywane po zmianach treści i co noc; zapisanie tego formularza odbudowuje je od razu.
empty: Nie ma jeszcze plików. Powstaną w ciągu kilku minut po pierwszym zapisie.
building: Trwa odbudowa. Odśwież stronę za minutę.
indexnow:
key: 'Klucz: :key, udostępniany pod :url'
no_key: Klucz zostanie wygenerowany po włączeniu IndexNow i zapisie.
last: 'Ostatnie powiadomienie: :time, adresy: :count, odpowiedź :status.'
never: Nie wysłano jeszcze powiadomienia.
err_key: Wyszukiwarki nie mogły odczytać pliku klucza pod :url. Sprawdź, czy witryna go udostępnia.
err_host: Wyszukiwarki odrzuciły adresy, bo nie pasują do adresu witryny.
err_rate: 'Zbyt wiele powiadomień; następna próba: :time.'
jobs:
rebuild: Odbudowa map witryny