Existe uma maneira de suprimir a saída de nós nas páginas de taxonomia, sem a necessidade de instalar um módulo (ou seja, apenas no template.php)?
Os nós marcados com um termo de taxonomia são exibidos na "Página Índice de taxonomia" (por exemplo, yoursite.com/taxonomy/term/[id]).
Novidade no Drupal 7, as páginas do Índice de Taxonomia podem ter campos anexados a elas. No entanto, se você tentar ultrapassar a página de taxonomia com uma Visualização (por exemplo, para controlar como os nós são exibidos), os campos nas páginas do Índice de Taxonomia não aparecerão.
Portanto, coloquei minha Visualização de taxonomia como bloco na página Índice de taxonomia. Dessa forma, eu posso controlar como os nós aparecem e ainda temos os campos da página Índice de Taxonomia.
Por esse motivo, a página de taxonomia ainda está exibindo seus nós. Eu posso ocultá-los definindo o teaser dos nós como oculto, mas ele ainda carrega os nós (e, portanto, qualquer CSS / Jquery anexado aos nós, mesmo que os nós não estejam sendo exibidos). Como posso impedir que os nós apareçam, de preferência dentro do template.php?
fonte
Respostas:
Eu sei que isso queria uma solução sem módulo, mas no Drupal 7, existe um módulo que faz exatamente o que você precisa: Desabilitar listas de nós de termos
Permite escolher por Vocabulário, se você deseja desativar a saída da lista de termos.
fonte
A solução http://www.wardontheweb.com/remove-node-lists-from-taxonomy-pages-in-drupal-7/ funciona bem para mim:
Nota: você deve redefinir o cache do seu site.
fonte
Você precisa remover os nós da variável $ page.
No template.php você pode fazer assim:
Em seu page.tpl.php, use este código:
Isso remove os nós de todos os vocabulários e termos . Se você deseja removê-los apenas em determinados termos ou em todos os termos de um vocabulário, use
arg(2)
otid
para carregar o termo e atualize a instrução if.fonte
Você pode fazer praticamente qualquer coisa no template.php, mas isso não é recomendado. O objetivo de usar um CMS é que você separe dados, comportamento e aparência. O arquivo template.php faz parte da camada de temas e você deve usá-lo para ajustar o estilo visual do seu site.
Se você deseja ajustar o comportamento de um site (neste caso: controle quais itens são mostrados em uma determinada lista), é necessário alterar o comportamento, para instalar e configurar os módulos. Se você deseja criar listas personalizadas de conteúdo, o módulo Views é exatamente o que você precisa.
No seu caso (se bem entendi), você deseja que os campos do termo de taxonomia sejam exibidos acima da lista de nós marcados com esse termo. Você pode recriar isso na sua visualização criando um bloco de visualizações que retira o termo ID do URL e exibe as informações necessárias.
fonte
Eu estava usando CSS para ocultar as coisas de taxonomia, mas definindo sua exibição como personalizada e em branco que parece ser uma opção melhor.
fonte