pom_theme_upsert_custom_css: crear o actualizar CSS personalizado gestionado

Las filas nuevas requieren un repeater_identifier estable. Reutiliza ese identificador en la vista previa, la aprobación y la ejecución; las filas existentes del modelo de contenido pueden conservar sus identificadores guardados. Aplícalo mediante el flujo de trabajo de aprobación de escritura.

Escribe un fragmento de CSS con nombre. Crea uno nuevo o reemplaza uno existente, según pases o no un identificador.

Argumentos

Argumento Obligatorio Significado
stylesheet_name Sí La etiqueta del fragmento
css Sí El CSS completo de este fragmento
repeater_identifier Sí ID estable del fragmento que se va a crear o actualizar
dry_run No Informar sin escribir

Permisos

Permitir POM Theme de escritura abierto, más manage_options.

El identificador decide si se crea o se reemplaza

Elige un repeater_identifier sin usar para crear un fragmento, o reutiliza su ID existente para actualizarlo en su lugar. Mantén el mismo identificador en la vista previa, la aprobación y la ejecución.

Ambos caminos informan de updated: true, así que la respuesta no te dice cuál de las dos cosas ha ocurrido. Cuenta los fragmentos después si es relevante.

El modo de fallo es la duplicación: un asistente al que se le pide «actualizar el CSS del banner» y que omite el identificador crea un segundo fragmento de banner, y ambos se compilan ahora en el sitio. El estilo se vuelve más desordenado en lugar de arreglarse.

Enumera los fragmentos y dame el identificador del banner, y luego actualiza ese identificador.

css reemplaza todo el contenido del fragmento

No es una combinación ni una adición. Lo que envíes es el fragmento.

Esa es la gracia de los fragmentos — el radio de impacto es un solo fragmento en lugar de toda la hoja de estilos — pero dentro de ese fragmento el reemplazo es total. Léelo primero con pom_theme_get_custom_css y guarda la copia; no hay revisiones.

stylesheet_name es obligatorio incluso al actualizar

No puedes cambiar el CSS y dejar el nombre igual omitiéndolo. Debe enviarse, y lo que envíes se convierte en el nombre.

Así que una actualización que olvide el nombre actual renombra silenciosamente el fragmento. Lee el nombre junto con el identificador y devuélvelo sin cambios, salvo que quieras renombrarlo.

La validación es limitada

El CSS que contenga etiquetas de apertura de PHP o </style> se rechaza con pom_ai_mcp_css_denied. No se comprueba nada más.

El CSS mal formado — una llave sin cerrar, una propiedad no válida — se acepta y se guarda. Como el fragmento se compila en la hoja de estilos del sitio junto con todo lo demás, un fragmento roto puede dañar las reglas que vengan después de él en la salida compilada.

El sitio es la prueba, no la respuesta.

La simulación muestra la fila, no una comparación

Devuelve la fila que se almacenaría: el identificador, el nombre y el contenido CSS. Lo que no devuelve es el contenido actual del fragmento.

Así que, a diferencia de la simulación del CSS global, aquí no hay before. Si quieres una comparación, lee primero el fragmento y compáralo tú mismo:

Lee el fragmento, luego simula el reemplazo y muéstrame ambos.

La simulación sí confirma algo útil: qué identificador se escribiría. Si muestra un ID recién generado cuando esperabas uno existente, estás a punto de crear un duplicado.

Cada escritura reconstruye el CSS del sitio

Se dispara la rutina de guardado del tema y los recursos CSS se regeneran. La respuesta incluye los metadatos del recurso resultante — comprueba que la marca de tiempo se haya movido.

Luego purga la caché. La reconstrucción cambia el archivo; las cachés siguen sirviendo el antiguo.

Dividir una hoja de estilos grande

Mover reglas de la hoja de estilos global a fragmentos es un buen cambio, y delicado:

  1. Lee el CSS global y consérvalo.
  2. Crea cada fragmento y verifica el sitio después de cada uno.
  3. Solo entonces reescribe la hoja de estilos global sin las reglas movidas.

Hacer primero el paso 3 deja el sitio sin estilos en el intervalo.

Después de escribir

  1. Enumera los fragmentos y confirma que el número no haya crecido de forma inesperada.
  2. Confirma que el nombre sea el que pretendías.
  3. Comprueba que la marca de tiempo de la hoja de estilos generada se haya movido.
  4. Purga la caché y luego carga las páginas afectadas.

Problemas comunes

Síntoma Causa
La escritura se rechaza Compuerta de escritura POM Theme cerrada
pom_ai_mcp_forbidden Falta manage_options
pom_ai_mcp_css_denied Etiquetas PHP o </style> en el CSS
Apareció un fragmento duplicado Se suministró un repeater_identifier diferente
El fragmento fue renombrado stylesheet_name se envió con un valor nuevo
Las reglas que tenías han desaparecido El contenido reemplaza, dentro de ese fragmento
El estilo del sitio se rompió El CSS no válido no se rechaza
No hay cambio visible Caché o CDN