Advanced Custom Fields

Campo de Imagem

O campo de Imagem permite que uma imagem seja selecionada e enviada para o servidor, utilizando a API nativa do WordPress para upload de imagens, o plupload.

campo de imagem do ACF

Campos adicionais deste tipo de campo

  • Valor Retornado: Define o tipo de retorno dos dados. Você pode escolher entre Objeto (array de dados), URL da imagem (string), ou ID da imagem (int);
  • Tamanho da Pré-visualização: Define o tamanho da imagem que será exibida no admin quando você estiver selecionar uma imagem na tela de edição de um post;
  • Biblioteca: Define se as imagens a serem selecionadas aqui são apenas as que você fizer upload nesse post ou se você poderá escolher entre todas enviadas para seu servidor através do WordPress.

A partir da versão 5 do ACF, será possível definir o tamanho máximo do arquivo e quais tipos de arquivos podem ser enviados (escrevendo a extensão dos arquivos separados por vírgulas como ‘gif,png,jpg’).

Como utilizar este campo em um template WP?

Como vimos acima, você pode definir 3 tipos de valores retornados: Objeto, URL ou ID da imagem, e a forma de utilizar as funções para exibição no seu template irão variar de acordo com o modo escolhido.

Abaixo, vejamos alguns exemplos de como exibir esta imagem no front-end, utilizando a variável ‘imagem-exemplo’. Se você estiver usando um campo Repetidor e um campo de imagem dentro dele, o campo de imagem será um sub-campo de um campo repetidor, e você deverá usar as funções get_sub_field()the_sub_field() no lugar de get_fieldthe_field.

Vale lembrar que você pode debugar as variáveis para ver tudo o que ela retorna, utilizando a função var_dump() do php (lembre-se sempre, WordPress é PHP, você deve estudar sobre ele também). Vejamos como:

<?php 

$image = get_field('imagem-exemplo');

echo '<pre>';
	var_dump( $image );
echo '</pre>';

?>

Note que no código acima, utilizamos a tag <pre> para renderizar corretamente as quebras de linha e exibir o array ou objeto de forma mais legível. Sabendo disso, você poderá fazer seus próprios testes para debugar o que foi feito, buscar erros e ver o que possa estar acontecendo de errado.

Exemplo de uso básico (valor retornado do tipo Objeto)

Este exemplo mostra como exibir a imagem quando você utilizar o retorno como Objeto. Este retorno é o ideal para poder pegar os atributos da imagem, como o campo ‘alt’, essencial para fornecer um texto alternativo para a imagem e atender bem leitores de tela e mecanismos de busca.

<?php 

$image = get_field('imagem-exemplo');

if( !empty($image) ): ?>

	<img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt']; ?>" />

<?php endif; ?>

Exemplo avançado (valor retornado do tipo Objeto)

Vejamos como exibir um tamanho de uma miniatura registrada no WordPress utilizando o objeto como tipo de retorno.

<?php 

$image = get_field('imagem-exemplo');

if( !empty($image) ): 

	// vars
	$url = $image['url'];
	$title = $image['title'];
	$alt = $image['alt'];
	$caption = $image['caption'];

	// thumbnail
	$size = 'thumbnail';
	$thumb = $image['sizes'][ $size ];
	$width = $image['sizes'][ $size . '-width' ];
	$height = $image['sizes'][ $size . '-height' ];

	if( $caption ): ?>

		<div class="wp-caption">

	<?php endif; ?>

	<a href="<?php echo $url; ?>" title="<?php echo $title; ?>">

		<img src="<?php echo $thumb; ?>" alt="<?php echo $alt; ?>" width="<?php echo $width; ?>" height="<?php echo $height; ?>" />

	</a>

	<?php if( $caption ): ?>

			<p class="wp-caption-text"><?php echo $caption; ?></p>

		</div>

	<?php endif; ?>

<?php endif; ?>

Exemplo de uso básico (valor retornado do tipo ID)

Vejamos como fazer uso do retorno ID.

<?php 

$image = get_field('imagem-exemplo');
$size = 'full'; // (thumbnail, medium, large, full, ou um tamanho customizado criado em seu tema)

if( $image ) {

	echo wp_get_attachment_image( $image, $size );

}

?>

Exemplo de uso básico (valor retornado do tipo URL)

Caso você precise apenas da URL, segue o exemplo também!

<?php if( get_field('imagem-exemplo') ): ?>

	<img src="<?php the_field('image'); ?>" />

<?php endif; ?>

Conclusão

Com este guia, você não terá mais dúvida nenhuma sobre como utilizar o campo Imagem do Advanced Custom Fields, e tudo o que você precisa saber sobre este campo está ai. Que tal pegar nossos exemplos, testar em sua máquina e debugar algumas variáveis?

A teoria tá toda ai, agora a prática é com vocês!

Posts Similares

  • Shortcode do ACF

    Shortcode do ACF

    O Shortcode do ACF pode ser utilizado em sua postagem para exibir o valor de um campo personalizado simples, como o de texto. Se você não sabe o que é um shortcode, recomendamos a leitura da documentação oficial do WordPress, no Codex. Requisitos ACF v3.1.1 ou superior Como Utilizar Place the shortcode marker with the desired field within your…

  • O que é o Advanced Custom Fields?

    O plugin Advanced Custom Fields (ACF) é a solução perfeita para qualquer site WordPress que precise de campos personalizados em formatos mais amigáveis e de fácil utilização, disponível em 2 versões: gratuita e PRO (versão paga e que posui algumas funcionalidades exclusivas). Os campos personalizados são uma funcionalidade nativa do WordPress, um campo para poder salvar dados…

  • Campo de Mapa (Google Maps)

    Campo de Mapa (Google Maps)

    O campo Google Map fornece uma interface de mapa interativa para selecionar um local. Este tipo de campo usa a API Javascript do Google Maps para fornecer pesquisa de preenchimento automático, pesquisa de geocodificação reversa e um marcador interativo. Campos adicionais deste tipo de campo Requisitos Para usar a API JavaScript do Google Maps, você…

  • the_field()

    the_field()

    Imprime o valor do campo especificado, da mesma forma que um “echo get_field($field_name)” faria, mas simplificando isso 🙂 Parâmetros $field_name: nome do campo a ser retornado. Exemplo: “page_content” (obrigatório) $post_id: Especifica o ID do post  onde o seu valor foi digitado. O padrão é pegar o do post atual, do loop que você está. Você também pode…

  • Campo Relacional

    O Campo Relacional é uma versão bem atrativa do campo de objetos. Com o Campo Relacional, você pode selecionar itens relacionados a uma página / posts / custom post types. É uma ótima forma de parar de usar plugins para posts relacionados, que nunca relacionam com precisão, e deixar seus usuários fazerem este relação manualmente, se…

  • Campo de Checkboxes

    O campo de checkboxes cria uma lista de opções selecionáveis. Útil para escolher categorias ou informações que podem possuir multiplicidade. Campos adicionais deste tipo de campo Escolhas: Aqui você vai popular a lista de valores selecionáveis. Cada item desta lista deverá estar em uma linha,  e deverá ser preenchido no formato ‘valor : label’. Se você…

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

1 Comentário