Para que possamos criar campos personalizados em nossa views podemos utilizar o módulo Views Custom Field. Com ele podemos criar campos utilizando HTML e PHP de uma maneira simples e fácil.
Baixe o módulo clicando aqui ou através do drush: drush dl views_customfield.
Não sabe como usar o Drush?
Veja um screencast do Rafael Silva clicando aqui.
Após habilitar o módulo precisaremos criar uma views. Nesse exemplo criarei uma views utilizando o tipo de conteúdo "Artigos" e utilizarei o estilo de saída como tabela. Sinta-se a vontade para personalizá-la de acordo com sua necessidade.
O módulo Views Custom Field cria 3 novos tipos de campos que podemos utilizar:
- Markup
- PHP Code
- Row Number

Confira abaixo como utilizar cada um dos campos
Markup
Com o Markup podemos colocar qualquer tipo de tag HTML em nosso campo. No meu exemplo colocarei apenas uma tag genérica e um texto: <strong>Campo Personalizado</strong>
Aqui está o resultado:

PHP Code
Com o PHP Code podemos ir muito além. Podemos escrever PHP puro diretamente no campo, como também podemos ter acesso ao demais campos da views. Todos os campos que antecederem o campo PHP Code, poderão ser acessados através da variável $data.
Para verificar o conteúdo da variável utilize o seguinte comando no campo "Valor": <?php var_dump($data); ?>
Por padrão, já teremos acesso ao nid do node em questão. Os demais itens serão os próprios campos da views. Em nosso caso, o título do node e o campo personalizado que foi criado anteriormente.
Vamos adicionar mais um campo. Esse campo será o status do node(node_status). Vamos utilizar o estilo de saída 'Verdadeiro/Falso'. Ele poderá ser 'excluído da exibição', e mesmo assim ainda será acessível através da variável $data.

Nesse exemplo vou fazer uma simples comparação e retornar uma mensagem ao usuário dependendo do status do node:

Row Number
O Row Number é muito simples e o seu próprio nome já diz: ele mostrará o número(posição) daquele node em relação a views. Ele é similar ao campo Global > Contador de Resultados.
E aqui está o resultado final.
Até a próxima. 




Comentários
Marcelo Spano
Grande Miguel,
Parabéns pelo tuto. Esses dias eu usei o Cutom Field para fazer uma parada muito doida. É bem interessante esse módulo. Breve vou postar a implementação que fiz no meu site.
Abraços
Alex
Boa! O customfield phpcode principalmente quebra um baita galho na hora de fazer aquelas customizações que não rola só com sobrescrever saída e evita sujar as mãos naqueles templates zuados de views... ;)
Abs!
Comentar