Este snippet cria um shortcode avaliacao_estrelas
que exibe uma avaliação por estrelas em um post no WordPress. A avaliação é baseada em um campo personalizado chamado avaliacao
.
Como funciona:
- Função do Shortcode:
function shortcode_avaliacao_estrelas() { ... }
: Define a funçãoshortcode_avaliacao_estrelas
que gera o HTML para a avaliação por estrelas.
- Obtenção da Avaliação:
global $post;
: Acessa o objeto global$post
para obter informações sobre o post atual.$avaliacao = floatval( get_post_meta( $post->ID, 'avaliacao', true ) );
: Obtém o valor da avaliação do campo personalizadoavaliacao
e o converte para um valor float.
- Geração das Estrelas:
$html = '<div class="avaliacao-estrelas">';
: Inicia o HTML para o contêiner das estrelas.for ( $i = 1; $i <= 5; $i++ ) { ... }
: Itera de 1 a 5 para gerar até 5 estrelas.- Estrela Cheia:
if ( $avaliacao >= $i ) { $html .= '<i class="fas fa-star"></i>'; }
- Meia Estrela:
elseif ( $avaliacao >= $i - 0.5 ) { $html .= '<i class="fas fa-star-half-alt"></i>'; }
- Estrela Vazia:
else { $html .= '<i class="far fa-star"></i>'; }
- Estrela Cheia:
$html .= '</div>';
: Fecha o contêiner das estrelas.
- Retorno do HTML:
return $html;
: Retorna o HTML gerado para ser exibido no local onde o shortcode é usado.
- Registro do Shortcode:
add_shortcode( 'avaliacao_estrelas', 'shortcode_avaliacao_estrelas' );
: Registra o shortcode[ avaliacao_estrelas ]
no WordPress, associando-o à funçãoshortcode_avaliacao_estrelas
.
Instruções de Uso
Obs: Remova espaços antes e depois do shortcode mostrado aqui!
Este código pode ser adicionado ao arquivo functions.php
do seu tema ou, preferencialmente, em um plugin específico para o site.
Para usar o shortcode, basta adicionar [ avaliacao_estrela ]
no conteúdo de um post ou página onde você deseja exibir a avaliação por estrelas.
[ avaliacao_estrelas ]