Changelog y Versiones
Complemento MCP para Joomla - Menús
Menús 1.1.5 (última versión)
Corregido
- Crear o mover un elemento de menú cuyo alias ya está en uso ya no provoca un error fatal «ApiRouter::build()».
Cambiado
- create_menu_item elige un alias disponible (con los sufijos -2, -3…) cuando el solicitado ya está en uso y devuelve el alias utilizado.
Menús 1.1.4
Corregido
get_menu_item_type_paramsya no provoca un error fatal («Undefined constant LIBXML_RECOVER») en alojamientos cuya compilación de libxml no define esa constante; ahora la opción del analizador XML está protegida con una alternativa segura.
Menús 1.1.3
Cambiado
- Las notas de la versión están ahora en inglés y se muestran en la vista de actualizaciones de Joomla (URL del registro de cambios).
Menús 1.1.2
Añadido
- Paquetes de idioma de-DE, es-ES, it-IT, nl-NL, pt-BR: traducción de las etiquetas del plugin y sus parámetros.
Menús 1.1.1
Corregido
- update_menu_item destruía las asociaciones multilingües del elemento modificado (y de todo su grupo): el modelo de Joomla
ItemModel::save()elimina#__associationscuando el campoassociationsestá ausente. Ahora, las asociaciones existentes se vuelven a leer y se envían de nuevo al modelo cada vez que se realiza un cambio.
Añadido
- Asociaciones multilingües consultables y editables: get_menu_item devuelve
associations({language: id}); create_menu_item y update_menu_item aceptanassociations({"fr-FR": 101} para vincular, {} para desvincular durante una actualización). Comprobaciones: idiomas específicos (no *), destinos existentes en el idioma indicado. - Las respuestas de create_menu_item y update_menu_item devuelven las asociaciones leídas de nuevo desde la base de datos.
Menús 1.1.0
Añadido
- set_menu_item_home: establece o elimina la marca de «página de inicio» de un elemento de menú, según el idioma. Joomla solo permite una página de inicio por idioma: la anterior se desmarca automáticamente (se devuelve en previous_home_id). Solo un elemento de componente publicado puede ser la página de inicio; la página de inicio de «Todos los idiomas» (*) no se puede eliminar (hay que elegir otra). El estado se vuelve a leer de la base de datos después de la operación.
- Argumento
home(booleano) en create_menu_item y update_menu_item: crea o actualiza el elemento y, a continuación, lo establece como página de inicio de su idioma en una sola operación. - Parámetros de los elementos de menú que se leen y escriben: get_menu_item devuelve el objeto
params(menu_show, título de la página, encabezado, clase CSS, metadatos, opciones de visualización del componente, etc.),note,template_style_idybrowserNav; list_menu_items los devuelve coninclude_params=true. create_menu_item y update_menu_item aceptanparams(en las actualizaciones, combina cada clave con el objeto existente),note,template_style_idybrowserNav, y devuelven los parámetros vueltos a leer de la base de datos. Esto permite realizar duplicaciones fieles (por ejemplo, reutilizarmenu_show=0de un elemento oculto).
Cambiado
- Comprobación del ACL de Joomla al leer: list_menus, list_menu_items, get_menu_item y list_menu_item_types ahora requieren
core.manageen com_menus (el permiso que necesita el backend para ver los menús), ya que los parámetros y las notas son datos de administración. Las operaciones de escritura siguen sujetas a controles de acceso (core.create / core.edit / core.edit.state / core.delete en com_menus); set_menu_item_home requiere core.edit.state (y core.edit a través del modelo de Joomla).
Menús 1.0.1
Cambiado
- Refuerzo de seguridad: cada herramienta de escritura está protegida por el permiso de Joomla correspondiente en com_menus (core.create, core.edit, core.edit.state, core.delete), además del ámbito de MCP.
Menús 1.0.0
Cambiado
- Primera versión estable, distribuida como plugin independiente (oferta Pro) a través del ARS de sensomcp.com.