ACF: Exibindo Lista de Valores para Checkbox

Este snippet de código cria um shortcode personalizado no WordPress para exibir valores de campos de checkbox do Advanced Custom Fields (ACF) em posts ou páginas. O shortcode gerará uma lista não ordenada (<ul>) com os valores selecionados dos campos de checkbox.

0
				
					function acf_custom_checkbox_shortcode($atts) {
    $atts = shortcode_atts(array(
        'field' => '',
        'post_id' => false,
    ), $atts, 'acf_checkbox');

    $field = $atts['field'];
    $post_id = $atts['post_id'];
    
    if (!$field) {
        return 'Campo não especificado.';
    }
    
    $values = get_field($field, $post_id);
    
    if ($values) {
        $output = '<ul>';
        foreach ($values as $value) {
            $output .= '<li>' . esc_html($value) . '</li>';
        }
        $output .= '</ul>';
    } else {
        $output = 'Nenhum valor selecionado.';
    }
    
    return $output;
}
add_shortcode('acf_checkbox', 'acf_custom_checkbox_shortcode');
				
			

Quer ajuda de um especialista para implementar?

Instruções de Uso

Como funciona:

  1. Definição da Função:
    • function acf_custom_checkbox_shortcode($atts) { ... }: Define a função acf_custom_checkbox_shortcode que será chamada quando o shortcode for usado.
  2. Atributos do Shortcode:
    • $atts = shortcode_atts(array(...), $atts, 'acf_checkbox');: Define os atributos padrão do shortcode e mescla com os atributos fornecidos pelo usuário.
      • 'field' => '': Nome do campo ACF.
      • 'post_id' => false: ID do post. Se não especificado, usará o post atual.
  3. Verificação do Campo:
    • if (!$field) { return 'Campo não especificado.'; }: Verifica se o atributo ‘field’ foi especificado. Se não, retorna uma mensagem de erro.
  4. Obtenção dos Valores:
    • $values = get_field($field, $post_id);: Usa a função get_field do ACF para obter os valores do campo especificado. Se $post_id for falso, usará o post atual.
  5. Geração do Output:
    • if ($values) { ... } else { ... }: Verifica se há valores retornados pelo campo.
      • Se houver valores:
        • $output = '<ul>';: Inicia uma lista não ordenada.
        • foreach ($values as $value) { $output .= '<li>' . esc_html($value) . '</li>'; }: Adiciona cada valor como um item da lista, escapando o valor com esc_html para segurança.
        • $output .= '</ul>';: Fecha a lista não ordenada.
      • Se não houver valores:
        • $output = 'Nenhum valor selecionado.';: Retorna uma mensagem indicando que nenhum valor foi selecionado.
  6. Retorno do Output:
    • return $output;: Retorna o HTML gerado para ser exibido no local onde o shortcode foi usado.
  7. Registro do Shortcode:
    • add_shortcode('acf_checkbox', 'acf_custom_checkbox_shortcode');: Registra o shortcode [acf_checkbox] no WordPress, associando-o à função acf_custom_checkbox_shortcode.

Instruções de Uso

Esse código pode ser usado adicionando-o ao arquivo functions.php do seu tema ou, preferencialmente, em um plugin específico para o site.

Para usar o shortcode em uma postagem ou página, você deve especificar o nome do campo ACF e, opcionalmente, o ID do post:

[acf_checkbox field="nome_do_campo" post_id="123"]
  • field: Nome do campo de checkbox ACF que você deseja exibir.
  • post_id: (Opcional) ID do post do qual você deseja obter os valores do campo. Se não for especificado, usará o post atual.

Conclusão

Este snippet permite que você crie um shortcode para exibir valores de campos de checkbox do ACF em seu conteúdo do WordPress.

É uma maneira conveniente de apresentar dados personalizados de maneira organizada e estilizada.

Outros Snippets

WooCommerce
Este snippet cria um shortcode que exibe os detalhes de uma reserva do WooCommerce com base no ID do pedido fornecido na URL.
WordPress
Este snippet redireciona todos os visitantes do site que não estejam logados para uma página específica (não a página de login).
WordPress
Este snippet redireciona todos os visitantes do site que não estejam logados para a página de login do WordPress. Isso é útil se você deseja restringir o acesso ao conteúdo do seu site apenas para usuários autenticados.

Últimos Posts

Aprimoramento de Performance no WordPress: Otimização de Scripts e CSS

Aprimoramento de Performance no WordPress: Otimização de Scripts e CSS

Descubra como otimizar scripts e CSS no WordPress para melhorar a performance do seu site. Aprenda técnicas de minificação, lazy loading, cache e muito mais.

Como Criar e Estruturar Child Themes Profissionais no WordPress

Como Criar e Estruturar Child Themes Profissionais no WordPress

Aprenda como criar e estruturar child themes profissionais no WordPress. Personalize temas com segurança, adicione funcionalidades e garanta que suas alterações permaneçam intactas em atualizações.

Como Estilizar Temas WordPress com CSS Avançado e Sass

Como Estilizar Temas WordPress com CSS Avançado e Sass

Aprenda como estilizar temas WordPress com CSS avançado e Sass. Descubra como usar variáveis, aninhamento e mixins para criar estilos organizados e responsivos.

Como Criar Templates Personalizados no WordPress

Aprenda como criar templates personalizados no WordPress com este guia completo. Descubra como personalizar layouts, usar WP_Query e carregar scripts específicos.

Como Criar um Tema WordPress Simples do Zero

Como Criar um Tema WordPress Simples do Zero

Aprenda como estruturar um tema básico no WordPress e entenda os arquivos principais e os templates comuns necessários

Anatomia de um Tema Avançado no WordPress

Anatomia de um Tema Avançado no WordPress

Conheça estrutura de um tema avançado, com foco nos arquivos essenciais e na hierarquia de templates, usando o Twenty Twenty-Three como exemplo

Comentários

Você precisa estar logado para ver esta informação.

Adicione seu Snippet

Título *
Resumo *
Descrição Completa *
Código *
Instruções de uso *

Solicitar Orçamento

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! 

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!