ti-enxame.com

Como posso controlar a exibição do módulo em páginas sem nenhum item de menu?

Atribuí um módulo às páginas de acordo com seus itens de menu nos parâmetros do módulo, mas gostaria de ocultar/mostrá-lo em páginas específicas que não possuem um item de menu vinculado a elas.

Como faço para exibir o módulo de controle nessas páginas?

7
web-tiki

Solução 1: menu oculto

Se suas páginas também precisarem de URLs próprios, você pode criar um menu oculto e vincular esses artigos no menu oculto. Um menu oculto significa que você não cria um módulo para ele, apenas o cria no gerenciador de menus, para que nunca seja visível como um menu verdadeiro para o usuário final.

Como o Joomla vê isso como um menu real (mesmo que não esteja visível), você poderá atribuir módulos a cada um deles selecionando os itens de menu ocultos nos parâmetros do módulo.

ATUALIZAÇÃO: Desde o Joomla 3.5, agora você pode ocultar os itens de menu em um menu publicado, indo para a guia Tipo de link no item de menu e alterando "Exibir no menu" para "Não".

Solução 2: gerenciador de módulo avançado

Além disso, o Advanced Module Manager do Regular Labs (anteriormente chamado de NoNumber) é absolutamente o caminho a percorrer. O gerenciador de módulo avançado permite atribuir módulos com base em um grande número de critérios, como categoria, componente, URL, item de menu, idioma. Você pode até usá-lo para publicar coisas para usuários ou grupos de usuários específicos.

20
Brian Peat

Você não pode fazer isso com o Joomla padrão. Somente por item de menu. Dê uma olhada no gerenciador de módulo avançado da RegularLabs, que oferece mais opções de atribuição.

7
Robert Went

Para contornar problemas como esse, normalmente crio um menu 'oculto' que não é colocado em nenhum lugar do site. Ao fazer isso, posso especificar o URL de páginas específicas e aplicar módulos a elas (como você está tentando fazer), bem como modelos.

4
Zachary Draper

Tente usar extensões Sem número.

http://www.nonumber.nl/extensions/advancedmodulemanager

O gerenciador de módulo avançado permite que você faça várias tarefas específicas, portanto, você pode configurá-lo para corresponder a um item de menu apenas se "abc" estiver no caminho da URL, ou por artigo ou componente específico, mesmo dia da semana . Você pode até escrever funções php personalizadas para criar seus próprios seletores. Você pode usar correspondências "any" ou "all", é incrível. Todas as outras extensões dele também são ótimas, vale a pena comprar o Pro, mas até o material básico é ótimo.

Desculpe - eu comecei a escrever isso há 20 minutos e fui interrompido e publiquei sem saber que todos já sugeriram isso !! Mas vou embora porque me sinto parte de uma equipe de pessoas que sabem coisas.

3
Faye

O Joomla só pode usar os itens de menu para controlar a visibilidade dos módulos.

Uma coisa que você pode fazer é ocultar a posição do módulo no modelo da seguinte maneira:

/templates//index.php

<?php if (JFactory::getApplication()->input->get('id') == 4711) : ?>
  <jdoc:include type="modules" name="submenu" /> 
<?php endif; ?>

Este código exibirá os módulos na posição "submenu" se o parâmetro id for "4711".

Você vê que esse método precisa de algum conhecimento de php e pode não atender às suas necessidades.

2
Harald Leithner

A maneira fácil e poderosa é, conforme sugerido, usando a extensão do gerenciador de módulo avançado nonumber.nl.

A maneira mais fácil e demorada é criar itens de menu ocultos para essas páginas, mas cuidado, isso mudará seu SEF

Eu também uso isso para criar URLs do SEF de 1º nível para itens em um submenu (por apelido de menu)

2
Johnnydement