[HELP] category.php | listar posts e pegar nome da categoria "neta"

18 views
Skip to first unread message

Thiago Santos

unread,
Dec 6, 2020, 9:04:44 AM12/6/20
to wordpress-brasil
Olá pessoal,

Tenho no meu arquivo category.php um loop para pegar todos os posts da categoria. Nesse meu loop, eu preciso imprimir como uma class na div, o slug de último nível de categoria, pois tenho estruturado as categorias da seguinte forma:

- Categoria Publications
----- Theses
----------- B.S. Monograph
----------- M.Sc. Dissertation
----------- Ph.D. Thesis 

----- Papers
----------- Journals
----------- Conferences  


Preciso imprimir uma class no meu <div> do post que vai ser o slug da categoria de último nível (Ex.: Journals) 
<div class="post SLUG_DA_CATEGORIA">

Alguém pode me dar uma luz? Segue abaixo meu código

            <!-- Start the Loop. -->
            <?php if (have_posts()) : while (have_posts()) : the_post(); ?>

            

                    <?php if (in_category('theses')) : ?>
                        
                        <article class="post item mb9 <?php echo SLUG-DA-CATEGORIA?>">
                            <h3><?php echo NOME-DA-CATEGORIA?></h3>
                            <p class=" date color-secondary"><?php the_time('Y'); ?></p>
                            <h3 class="title-post"><?php the_title(); ?></h3>
                            <p class="text color-secondary">
                                <?php
                                $pdf = get_field('pdf');
                                $bib = get_field('bib');
                                $amazon = get_field('amazon');
                                ?>

                                <?php if ($pdf) : ?>
                                    [<a href="<?php the_field('pdf'?>">PDF</a>]
                                <?php endif?>

                                <?php if ($bib) : ?>
                                    [<a href="<?php the_field('bib'?>">Bib</a>]
                                <?php endif?>

                                <?php if ($amazon) : ?>
                                    [<a href="<?php the_field('amazon'?>">Amazon</a>]
                                <?php endif?>
                            </p>
                        </article>
                    <?php else : ?>
                        <article class="post item mb9 <?php echo SLUG_DA_CATEGORIA?>">
                            <h3><?php echo NOME-DA-CATEGRIA?> </h3>
                            <p><?php the_time('Y'); ?></p>
                            <?php
                            $content = get_the_content();
                            $content = str_replace('<p''<p class="text color-secondary"'$content);
                            ?>
                            <?php echo $content ?>
                        </article>

                    <?php endif?>


                <?php endwhile;
            else : ?>

                <p><?php esc_html_e('Sorry, no posts matched your criteria.'); ?></p>


                <!-- stop The Loop. -->
            <?php endif?>

Atc,
Thiago Santos
www.tigurio.com.br (temporariamente indisponível)
67 9 9676-7708
71 9 9660-8800 (WhatsApp)
_________________________

GTalk: tig...@gmail.com
Twitter: twitter.com/tigurio
Skype: tigurio 
Facebook: http://www.facebook.com/tigurio
FanPage:  http://www.facebook.com/fanpageTigurio 
Linked In: http://br.linkedin.com/in/tigurio
________________________________________

Marco Andrei Kichalowsky

unread,
Dec 6, 2020, 11:51:28 AM12/6/20
to WordPress Lista
Thiago,

A função get_the_category() devolve a lista de categorias associadas a um post. Cada categoria é um objeto com nome, slug , id, etc.

Dá uma olhada nos exemplos na documentação, acho que é o que precisas:


Boa sorte!
Marco Andrei



--
Marco Andrei Kichalowsky, diretor de marketing
Fone: (51) 998 686 436






---- On Dom, 06 dez 2020 11:04:26 -0300 Thiago Santos<tig...@gmail.com> wrote ----

--
Regras do Grupo: http://bit.ly/1lOeYqs
 
Projeto WordPress: http://br.wordpress.org/
Temas: http://wordpress.org/extend/themes/
Plugins: http://wordpress.org/extend/plugins/
Grupo no Facebook: http://www.facebook.com/groups/wordpress.brasil/
---
Você recebeu essa mensagem porque está inscrito no grupo "WordPress Brasil Lista" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para wordpress-bras...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/wordpress-brasil/CA%2BT1YmVnsF6JpM%2B-WMA4QbpfX1mB8UjhR-iXpthOh_0%3DsEHajw%40mail.gmail.com.

Reply all
Reply to author
Forward
0 new messages