post

Obter Categoria Principal Adicionada no Post WordPress com PHP

Publicado em: 24/05/2023

Categorias: BlogPHPWordpress

Aqui está um exemplo de shortcode que você pode usar no WordPress para exibir apenas a categoria principal de um post personalizado (CPT):

function obter_categoria_principal($atts) {
    $atts = shortcode_atts(array(
        'post_type' => 'seu_cpt',
    ), $atts);
    
    global $post;
    
    // Verifica se estamos em um post do tipo especificado
    if ($post->post_type == $atts['post_type']) {
        // Obtém as categorias do post atual
        $categorias = get_the_terms($post->ID, 'category');
        
        if ($categorias && !is_wp_error($categorias)) {
            // Encontra a categoria principal
            $categoria_principal = array();
            
            foreach ($categorias as $categoria) {
                if ($categoria->parent == 0) {
                    $categoria_principal = $categoria;
                    break;
                }
            }
            
            if (!empty($categoria_principal)) {
                return $categoria_principal->name;
            }
        }
    }
    
    return '';
}
add_shortcode('categoria_principal', 'obter_categoria_principal');

OBS: Este código acima é para trazer apenas 1 categoria, então certifique-se de que seu post usa apenas 1 categoria para que ela seja a principal, caso o mesmo post (ou produto, no caso de woocommerce) tiver mais de 1 categoria, sempre irá trazer a ultima categoria (geralmente por ordem de nome).

Certifique-se de substituir ‘seu_cpt‘ pelo slug do seu tipo de post personalizado (CPT) e ‘category‘ pelo slug da taxonomia de categoria usada em seu CPT.

Depois de adicionar esse código ao seu arquivo functions.php do tema ativo ou em um plugin personalizado, você pode usar o shortcode [categoria_principal] em qualquer lugar do seu site para exibir a categoria principal do post personalizado atual.


Link de compartilhamento

Compartilhe esse conteudo nas redes sociais ou por mensagem usando o link curto abaixo. Basta clicar em cima do link para copiar.

bruno.art.br/pb/2840

ID de Referência: 2840

Sugira uma publicação

Envie uma mensagem para mim, e sugira alguma publicação de algum tema que tenha dificuldades de resolver.

Clique aqui e entre em contato


Comentários