feat: URL rules and the settings singleton

This commit is contained in:
2026-10-27 10:34:39 +01:00
parent fb9590f099
commit ce60c8a1ee
20 changed files with 1412 additions and 0 deletions

View File

@@ -1,8 +1,109 @@
plugin:
name: SEO
description: Search engine metadata for every content type, URL rules and global SEO settings.
nav:
seo: SEO
rules: URL rules
permissions:
tab: SEO
manage: Manage SEO
manage_comment: Edit the SEO tab of every content type, URL rules, redirects, robots.txt and the SEO settings, in the admin and through MCP.
tab:
seo: SEO
field:
title: SEO title
title_comment: Leave empty to use the title template from the SEO settings.
title_comment_rule: Leave empty to keep the title of the page or record at this address.
description: Meta description
canonical: Canonical URL
canonical_comment: Leave empty for this page's own address. Accepts a path (/blog/post) or a full URL, also on another domain.
robots: Search engine indexing
robots_comment_rule: “Inherit” keeps the setting of the record at this address, then the content type default.
og_title: Social title
og_description: Social description
og_image: Social image
robots:
inherit: Inherit
site_default: Site default
staging_title: This is not the production environment
status:
staging: On this environment every page is served with noindex and robots.txt blocks everything (non-production lock).
settings:
category: SEO
label: SEO settings
description: Title templates, default descriptions, indexing rules, address format and search engine verification.
tab_general: General
tab_indexing: Indexing
tab_urls: Addresses
tab_verification: Verification
site_name: Site name
site_name_comment: Replaces %site% in title templates.
title_template: Title template
title_template_comment: 'Used when a page has no SEO title. Default: the page title, a vertical bar and the site name (%title% followed by %site%).'
home_template: Home page title template
default_description: Default meta description
default_description_comment: Used when neither the page, its template nor its content provides a description.
default_og_image: Default social image
twitter_site: X (Twitter) account
twitter_site_comment: Your handle with @, e.g. @summercms. Sent as twitter:site.
query_params: Query parameters
query_params_comment: Decides which parameters stay in the canonical URL. A trailing * matches a prefix, e.g. utm_*.
param_name: Parameter
param_kind: Kind
param_path: Only under path
param_content: 'Content: stays in the canonical'
param_filter: 'Filter or sort: dropped, page gets noindex, follow'
param_tracking: 'Tracking: dropped'
param_path_comment: 'Empty: the whole site. Example: /katalog/*'
param_add: Add parameter
noindex_paths: Addresses never indexed
noindex_paths_comment: One address or pattern per line, e.g. /konto/* or /logowanie. These pages get noindex, nofollow. Pages behind sign-in are marked automatically.
search_paths: Internal search results
search_paths_comment: One address or pattern per line, e.g. /szukaj. These pages get noindex, follow.
url_host: Domain form
url_host_keep: Do not change
url_host_www: Always with www
url_host_bare: Always without www
url_slash: Trailing slash
url_slash_keep: Do not change
url_slash_add: Always add (/blog/)
url_slash_remove: Always remove (/blog)
url_lowercase: Lowercase addresses
url_change_comment: A change sends every non-matching address to the new form with a 301. Check the site's current addresses first.
url_fixed_comment: 'Always on: HTTPS, removal of double slashes and /index.html, a single 301 hop to the final address, and strict addresses (every segment must match the record).'
verify_google: Google verification code
verify_bing: Bing verification code
verify_yandex: Yandex verification code
verify_code_comment: Paste only the content value of the meta tag. It is added to the home page.
verify_other: Other verification meta tags
verify_other_name: Meta name
verify_other_content: Content
verify_other_add: Add meta tag
verify_files: Verification files
verify_files_filename: File name
verify_files_body: File content
verify_files_add: Add file
verify_files_comment: Served from the site root, e.g. /google1234.html.
verify_filename_invalid: Use a plain file name ending in .html, .txt or .xml, without slashes, e.g. google1234.html.
verify_filename_taken: Another verification file already uses this name.
template_unknown: Unknown placeholder “:placeholder”. Use one from the table below the templates.
rules:
new: New URL rule
list_title: URL rules
name: URL rule
url: Address
match: Match
match_exact: Exact address
match_pattern: Pattern
note: Note
note_comment: Why this rule exists, e.g. the audit it comes from. Not shown on the site.
col_overrides: Sets
col_updated: Updated
url_comment_full: A URL rule wins over the record's SEO tab and the SEO settings. A path such as / or /blog?tag=*. In a pattern, * matches any text.
url_taken: A rule for this address and match already exists.
url_invalid: Start the address with /. Use * only in a pattern.
list_empty: No URL rules yet. A rule sets SEO for an address that has no record behind it, such as the home page or a filter URL.
delete_confirm: Delete this URL rule? The address falls back to its record and the SEO settings. You can undo it in History.
delete_selected_confirm:
one: Delete :count URL rule? You can undo it in History.
other: Delete :count URL rules? You can undo it in History.