Qual é a melhor maneira de alterar a saída do campo? Eu encontrei " hook_field_formatter_view ", mas parece que não existe nada como "hook_field_formatter_view_alter". No meu caso, tenho campos de endereço (módulo Addressfield) usados nos painéis "Remessa" e "Faturamento" na página de checkout do DrupalCommerce . Quero adicionar alguns js a esses campos, de preferência usando a API de formulário do Drupal "#attached"
11
Respostas:
Você pode tentar alterá-lo com uma função de pré-processo:
Fiz um teste para modificar $ variable ['elemento'] ['# anexado'] ['js'], mas Drupal não reconheceu as alterações no elemento. Não sei por que. Portanto, você pode precisar usar o drupal_add_js.
fonte
O
hook_field_formatter_view()
especificado pela configuração de exibição é chamadofield_default_view()
, que é chamado (uma ou duas camadas abaixo) porfield_attach_view()
.Você pode ver no segundo link que isso chama
hook_field_attach_view_alter()
depois de terminar com os formatadores de campo:então você deve poder definir esse gancho.
Observe, porém, que você terá que encontrar novamente o campo na entidade, pois ele executa o gancho para toda a matriz de renderização, não apenas a matriz de renderização para um campo. Mas o exemplo de gancho vinculado acima fornece um exemplo de como fazer isso.
fonte