Changelog & Versões
Plugin MCP para Joomla - Menus
Menus 1.1.6 (versão mais recente)
Adicionado
- update_menu_item aceita
aliaspara renomear o segmento da URL de um item existente; o caminho do item e os caminhos de seus filhos são recriados. A resposta agora retorna título, alias e caminho. - Um alias solicitado que já esteja sendo usado por outro item (mesmo pai e idioma, em qualquer menu) é recusado com uma mensagem clara.
Menus 1.1.5
Corrigido
- A criação ou movimentação de um item de menu cujo alias já está em uso não falha mais com um erro fatal "ApiRouter::build()".
Alterado
- create_menu_item escolhe um alias disponível (com o sufixo -2, -3…) quando o solicitado já está em uso e retorna o alias realmente utilizado.
Menus 1.1.4
Corrigido
get_menu_item_type_paramsnão trava mais com o erro fatal "Undefined constant LIBXML_RECOVER" em hospedagens cuja versão do libxml não define essa constante; a flag do analisador XML agora é protegida com um fallback seguro.
Menus 1.1.3
Alterado
- As notas da versão agora estão em inglês e são exibidas na tela de Atualizações do Joomla (URL do changelog).
Menus 1.1.2
Adicionado
- Pacotes de idioma de-DE, es-ES, it-IT, nl-NL, pt-BR: tradução dos rótulos do plugin e de seus parâmetros.
Menus 1.1.1
Corrigido
- update_menu_item destruía as associações multilíngues do item modificado (e de todo o seu grupo): o modelo do Joomla
ItemModel::save()remove o conteúdo de#__associationsquando o campoassociationsestá ausente. Agora, as associações existentes são lidas novamente e repassadas ao modelo a cada alteração.
Adicionado
- Associações multilíngues podem ser lidas e editadas: get_menu_item retorna
associations({language: id}); create_menu_item e update_menu_item aceitamassociations({"fr-FR": 101} para vincular, {} para desvincular durante a atualização). Verificações: idiomas específicos (não *), destinos existentes no idioma informado. - As respostas de create_menu_item e update_menu_item retornam as associações lidas novamente do banco de dados.
Menus 1.1.0
Adicionado
- set_menu_item_home: define (ou remove) a indicação de “página inicial” de um item de menu, por idioma. O Joomla mantém apenas uma página inicial por idioma: a anterior é automaticamente desmarcada (retornada em previous_home_id). Apenas um item de componente publicado pode ser a página inicial; a página inicial “Todos os idiomas” (*) não pode ser removida (escolha outra). O estado é relido do banco de dados após a operação.
- Argumento
home(booleano) em create_menu_item e update_menu_item: cria/atualiza o item e, em seguida, define-o como a página inicial do respectivo idioma em uma única operação. - Parâmetros dos itens de menu lidos e gravados: get_menu_item retorna o objeto
params(menu_show, título da página, cabeçalho, classe CSS, metadados, opções de exibição do componente etc.),note,template_style_idebrowserNav; list_menu_items os retorna cominclude_params=true. create_menu_item e update_menu_item aceitamparams(mesclados chave a chave com os existentes durante a atualização),note,template_style_idebrowserNav, e retornam os parâmetros relidos do banco de dados. Isso permite duplicações fiéis (por exemplo, reutilizandomenu_show=0de um item oculto).
Alterado
- Verificação do ACL do Joomla nas operações de leitura: list_menus, list_menu_items, get_menu_item e list_menu_item_types agora exigem
core.manageem com_menus (a permissão exigida pelo backend para visualizar menus), pois os parâmetros e as notas são dados administrativos. As operações de gravação continuam protegidas (core.create/core.edit/core.edit.state/core.deleteem com_menus); set_menu_item_home exigecore.edit.state(ecore.editpelo modelo do Joomla).
Menus 1.0.1
Alterado
- Reforço de segurança: cada ferramenta de gravação é protegida pela permissão correspondente do Joomla em com_menus (core.create, core.edit, core.edit.state, core.delete), além do escopo do MCP.
Menus 1.0.0
Alterado
- Primeira versão estável, distribuída como um plugin independente (oferta Pro) por meio do ARS do sensomcp.com.