Alterando ícones de arquivos padrão do Drupal com o módulo File Field Icons

Provavelmente você já esbarrou na necessidade de customizar os ícones exibidos a partir de um campo de Arquivo (anexos de um node, por exemplo) para que possam acompanhar o estilo do tema que está utilizando no Drupal. Esta é uma funcionalidade bem simples que, na minha opinião, já poderia estar incorporada ao núcleo do Drupal. Veja um exemplo do padrão abaixo:

Na verdade, o Drupal já suporta este tipo de customização, implementando o hook_preprocess_HOOK() para o callback theme_file_icon(), conforme o exemplo abaixo:

/**
 * Implements hook_preprocess_HOOK() for theme_file_icon().
 *
 * Change the icon directory to use icons from this theme.
 */
function MYTHEME_preprocess_file_icon(&$variables) {
  $variables['icon_directory'] = drupal_get_path('theme', 'MYTHEME') . '/file_icons';
}

Este código, inserido no arquivo template.php do seu tema, atenderia perfeitamente a necessidade. A partir daí, bastaria:

  1. Trocar as ocorrências de MYTHEME pelo nome do seu tema (machine name)
  2. Copiar a pasta /modules/file/icons
  3. Colar dentro do seu tema, renomeando para file_icons
  4. Trocar os ícones desejados
  5. Limpar o cache

Mas os usuários sem domínio de programação poderiam ficar bem perdidos. Muitos usam o Drupal justamente para não precisarem programar — e esta é uma das maravilhas do Drupal. Que tal um jeito mais fácil? :)

File Field Icons

O File Field Icons é um pequeno módulo permite alterar os ícones dos arquivos no Drupal sem a necessidade de programar. Ao instalar o módulo, acesse a página de configuração no endereço admin/config/media/file-field-icons e selecione o pacote desejado. O módulo já vem com um pacote completo, no estilo Metro, pronto para usar.

Você também pode adicionar novos pacotes de ícones de forma muito simples:

  1. Copie a pasta sample (contida na raiz do módulo) para dentro de sites/default/files/file_field_icons
  2. Renomeie a pasta sample para qualquer nome desejado. Este será o nome do seu pacote. O caminho completo deve ser sites/default/files/file_field_icons/seu_novo_pacote
  3. Altere os ícones do seu novo pacote
  4. Acesse novamente a página administrativa (admin/config/media/file-field-icons) e selecione seu novo pacote

Pronto, a partir de agora seus ícones customizados serão exibidos nos arquivos do seu site.

Simples, não é mesmo? Este módulo foi desenvolvido durante o Contrib Time da Fisqua — período da semana em que nos juntamos para contribuir com soluções de problemas reais da comunidade.

Curtiu o post? Então deixe seu comentário abaixo ;)

Referências: