O Drupal é um framework modular e um sistema de gerenciamento de conteúdo (CMS) escrito em PHP. O Drupal permite criar e organizar conteúdo, manipular a aparência, automatizar tarefas administrativas e definir permissões e papéis para usuários e colaboradores.

A definição de taxonomia em uma visão geral seria o agrupamento com base em características comuns, muito utilizado na área da biologia. Essa definição pode ser utilizada perfeitamente no ambiente Drupal onde as características comuns do site são definidas pelo administrador através de hierarquias de vocabulários.

Essa técnica permite ao administrador do site categorizar os vários tipos de conteúdo que possam existir, ou até mesmo serem criados por ele, gerenciando as hierarquias entre si e refletindo assim a organização até o nível de interesse a ser mostrado. No exemplo a seguir (Tabela 1) será mostrado a nova classificação do Regime de nove anos do Ensino Fundamental como base para criarmos as taxonomias.

Um vocabulário seria a categoria, ou seja, a parte mais abrangente (generalização) e os termos seriam os itens (especialização) pertencentes àquela categoria. Exemplo:

Vocabulário: Fruta;

Termos: Banana e maçã.

SÉRIE – Regime de 8 anos

ANO – Regime de 9 anos

Pré – Educação Infantil

1° ANO

1ª Série

2° ANO

2ª Série

3° ANO

3ª Série

4° ANO

4ª Série

5° ANO

5ª Série

6° ANO

6ª Série

7° ANO

7ª Série

8° ANO

8ª Série

9° ANO

Tabela 1. Ensino fundamental - Fonte: Planeta Educação

Para se criar uma Taxonomia basta clicar em Estrutura -> Taxonomia -> Novo Vocabulário, como mostram as Figuras 1 e 2.

Menu estrutura

Figura 1. Menu estrutura

Seleção do novo vocabulário

Figura 2. Seleção do novo vocabulário

Será criado um novo vocabulário chamado “Ensino Fundamental” para esse exemplo, assim, ao clicar no botão “Salvar”, estará criado o novo, como mostra a Figura 3.

Novo vocabulário criado

Figura 3. Novo vocabulário criado

como inserir novos termos

Figura 4. Como inserir novos termos

Conforme a Tabela 1, serão criados todos os nove anos, adicionando um termo correspondente para cada ano clicando em “adicionar termo” (Figura 4) ao vocabulário “Ensino Fundamental”. Na tela da Figura 5 podemos ver os campos para a inserção do novo termo.

Novo termo

Figura 5. Novo termo

Após todos os termos criados dentro do vocabulário “Ensino Fundamental” será possível observá-los clicando em “listar termos”, como mostra a Figura 6.

Lista dos novos termos

Figura 6. Lista dos novos termos

Agora serão criadas todas as séries para exemplificar um pouco a organização de hierarquia dentro de uma taxonomia. No grupo “Relações” serão colocados os termos superiores ao do seu ano correspondente de cada série que será criada.

Exemplo: Para “Educação Infantil”, o termo superior será o “Primeiro Ano”, como mostra a Figura 7.

Definição de relação

Figura 7. Definição de relação

Essa hierarquia pode ser organizada da forma que melhor atender às necessidades do Administrador do site, apenas foi escolhida desta maneira para exemplificar. A hierarquia desse exemplo é mais bem observada na Figura 8, onde o termo mais para a direita está na dependência do termo diretamente superior, como foi explicado na Figura 7.

Hierarquia

Figura 8. Hierarquia

Será criado um Tipo de Conteúdo chamado “Conteúdo Acadêmico” em Estrutura -> Tipos de Conteúdo -> Novo Tipo de Conteúdo. Após preencher o campo “Nome” do Tipo de Conteúdo que está sendo criado e clicar em salvar, clique em “gerenciar campos”, como mostram as Figuras 9 e 10.

Novo tipo de conteúdo

Figura 9. Novo tipo de conteúdo

Gerência de campos

Figura 10. Gerência de campos

Preencha o “Novo Campo” com o nome “série”, tipo de campo “Referência de Termo”, o widget para “Lista de Seleção” e clique em “salvar”.

Marcando a opção “Campo obrigatório”, será garantido que quem adicionar um conteúdo acadêmico vai ser obrigado a preencher o campo “Série”. É possível ainda se escolher um valor padrão que desejar, como mostra a Figura 11.

Marcação do campo obrigatório

Figura 11. Marcação do campo obrigatório

O campo “Quantidade de valores” corresponde à quantidade permitida de classificações (termos criados dentro das taxonomias) que o usuário poderá dar a um mesmo tipo de conteúdo adicionado. No exemplo usado não faria sentido ter um conteúdo para a sexta série e para oitava série, por exemplo, classificados como de mais séries como a quinta série ao mesmo tempo. Logo, será deixada a quantidade como “1”.

Como foi escolhida a opção referência de Termos, aparecerão as opções de vocabulários existentes. Nesse caso, deverá ser selecionar o vocabulário criado anteriormente chamado “Ensino Fundamental” e clicar em “Salvar as configurações do campo”, como mostram as Figuras 12 e 13.

seleção de vocabulário

Figura 12. Seleção de vocabulário

inclusão de novo campo

Figura 13. Inclusão de novo campo.

Agora para testar, deve se adicionar um conteúdo e selecionar “Conteúdo Acadêmico”, como mostra a Figura 14.

Testando o vocabulário

Figura 14. Testando o vocabulário

Adicionando um conteúdo teste no tipo de conteúdo chamado “Conteúdo Acadêmico”, agora terá um campo obrigatório chamado “série” com um combo contendo todos os termos da taxonomia correspondente ao “Ensino Fundamental”, como mostram as Figuras 15 e 16.

Exemplo em execução

Figura 15. Exemplo em execução

Exemplo em execução

Figura 16. Exemplo em execução

Até agora foi organizado uma estrutura para o tipo de conteúdo chamado “Conteúdo Acadêmico”, utilizando as hierarquias dos vocabulários de taxonomia chamado “Ensino Fundamental”. Através disso, será possível utilizar vários módulos disponíveis na comunidade Drupal que possibilitam utilizar diversas vantagens sobre o uso dessa organização de hierarquia da Taxonomia.

Por exemplo, o módulo “Taxonomy breadcumb Lite”auxilia em uma técnica conhecida como “migalhas de pão”, onde o usuário vai navegando pelo site sabendo o seu histórico de navegação através de uma hierarquia do site mostrada para ele. Esse módulo utilizaria hierarquia da Taxonomia, como mostra a Figura 17.

Após a instalação desse módulo, o conteúdo criado acima terá a hierarquia de nossa taxonomia.

Execução com o Módulo instalado

Figura 17. Execução com o Módulo instalado.

Outro exemplo também é o módulo “Taxonomy Manager”, que permite gerenciar a taxonomia através de uma interface amigável e colorida dentro do Drupal, facilitando a gerência do Administrador do site, como mostra a Figura 18.

Interface de administração

Figura 18. Interface de administração

O módulo “Pathauto i18n Taxonomy”tem esse nome por possuir 18 línguas nele para poder traduzir a URL no idioma do usuário, mas sua principal característica está na promessa da facilidade da URL do site ser gerada automaticamente com base na hierarquia da taxonomia. Ou seja, no exemplo de Taxonomia criada anteriormente, seria gerado dinamicamente uma URL como “www.nomedoseusite.com/sextoano/setimaserie.”. Esse módulo possibilita também configurar como deseja que ocorram as formatações de caracteres especiais, como palavras acentuadas. Enfim, o módulo, apesar de estar na versão Beta, cumpre bem o seu propósito.

Já o módulo Taxonomy menupermite a criação de menus dinâmicos gerados automaticamente com base em taxonomia sem interferir nos outros menus já existentes no site.

Existem muitos outros módulos que reutilizam esse tipo de hierarquia, podendo ser, por exemplo, o módulo Taxonomy Access Controlde permissões de acesso, que é um módulo também bastante interessante e se alinhado com outros módulos de bloqueio de acesso funciona perfeitamente bem para um controle de acesso dinâmico com base na Taxonomia existente. Também como exemplo, a de utilização da estrutura de relatórios, de blocos e muito mais.

O foco desse artigo foi possibilitar montar a estrutura da melhor forma para apenas baixar e habilitar todos os módulos citados e muitos outros que permitam a reutilização da hierarquia da Taxonomia.

Espero que tenham gostado do artigo e até a próxima!!