Files
sm-seo-plugin/controllers/pages/config_list.yaml
Jakub Zych 9e802ec850 feat: page registry with its admin screen and signpost type
- golem15_seo_pages (migration 202610280002): the site's own frontend pages
  with an address and a name per locale, kind, origin, parent, content date
  and note; settings routes_reported_at
- SEO > Pages (golem15.seo.pages) after URL rules: list with kind, origin
  and missing filters and the missing row state, form with the P9 partial;
  the plugin's form extension saves the address and name per locale and
  refuses url_required, url_invalid, url_taken and url_owned
- menu item type seo-page with a content descriptor, so each page gets
  the SEO tab, resolves ok and is listed in the sitemaps grouped by kind
  (pages, offers, services, landing-pages, titled per locale)
- management API GET/POST /_seo/api/v1/pages, PUT/DELETE /pages/{id} and
  the MCP tools seo_list_pages, seo_create_page, seo_update_page,
  seo_delete_page (in this commit because the operations parity test maps
  every Pages operation to its tool)
2026-11-04 13:20:45 +01:00

27 lines
805 B
YAML

# Pages list (UI-SPEC C21): the page registry by address; reported pages
# missing from the newest route report are marked.
list: ~/plugins/golem15/seo/models/page/columns.yaml
modelClass: Golem15\SEO\Models\Page
title: golem15.seo::lang.pages.list_title
recordUrl: golem15/seo/pages/update/:id
noRecordsMessage: golem15.seo::lang.pages.list_empty
recordsPerPage: 20
showCheckboxes: true
showSetup: true
filter: config_filter.yaml
defaultSort:
column: url
direction: asc
toolbar:
buttons: [create, delete]
search:
prompt: backend::lang.list.search_prompt
messages:
create: golem15.seo::lang.pages.new
empty: golem15.seo::lang.pages.list_empty
deleteConfirm: golem15.seo::lang.pages.delete_selected_confirm
rowStateNegative: golem15.seo::lang.pages.state_missing