docs: documenta el contrato de plugins CMS personalizados (checkPoints en cms/lib/plugins/index.php)
No estaba documentado en absoluto (solo se mencionaba builder_saas para color). Evita tener que explorar el servidor por SSH para entender addPlugins/checkPoints/gating/filtros.
This commit is contained in:
@@ -152,6 +152,22 @@ datos correctos y sin error visible).
|
||||
|
||||
---
|
||||
|
||||
## Plugins CMS personalizados (checkPoints)
|
||||
|
||||
Para entender **cómo despacha el CMS un plugin custom** (no confundir con hooks de módulo), lee primero
|
||||
`cms/lib/plugins/index.php` **de ese proyecto** — no hace falta explorar el servidor por SSH ni el
|
||||
código de `web-base`, el contrato completo está ahí:
|
||||
|
||||
- `addPlugins($type, &$var, $fieldtype)` despacha los checkPoints con `include` (no clases/autoload).
|
||||
- Gating nativo por `adminOnly` + `isAdmin` — un checkPoint puede declararse solo-admin.
|
||||
- `$var` se pasa **por referencia** — un plugin puede mutar el valor que ven los siguientes.
|
||||
- Filtros `menuFilter`/`actionFilter` por tabla/action, para que un plugin solo se dispare donde aplica.
|
||||
- `newFieldType` para registrar tipos de campo nuevos del builder.
|
||||
- La instalación de un plugin va vía `install.sql` + `schemaPresets` — **no** `schemas/` (ese es el
|
||||
sistema viejo de `seo_toolkit`, con el `install.php` comentado; no lo repliques).
|
||||
|
||||
---
|
||||
|
||||
## CmsApi (PHP)
|
||||
|
||||
API server-side para operaciones de base de datos. Disponible en todos los hooks.
|
||||
|
||||
Reference in New Issue
Block a user