Suporte » Questões avançadas » Separacao de posts por categorias

  • Resolvido gabrielfernandes

    (@gabrielfernandes)


    Ola, sou novo com wordpress e estava procurando uma solucao para o seguinte problema:

    Tenho uma pagina com o loop dos posts de um portifolio com o seguinte codigo:

    <div class="portifolio">
    <?php if ( have_posts() ) : ?>
        <?php $i = 0; ?>
        <?php while ( have_posts() ) : the_post(); $i++; ?>
    
        <div class="post_home">
            <a href="<?php the_permalink() ?>" class="thumb" title="<?php the_title(); ?>">
                <?php if (has_post_thumbnail()) : ?>
                    <?php the_post_thumbnail(array(145,145)); ?>
                <?php else : ?>
                    <img src="<?php bloginfo('template_url'); ?>/i/noimage.jpg" width="145" height="145" alt=""/>
                <?php endif; ?>
            </a>
        </div>
        <?php endwhile; ?>
    <?php endif; ?>
    </div>

    No entanto gostaria que fosse separado de acordo com as categorias de cada uma ( as quais serão os clientes ) e adicionado no inicio o nome da categoria seguinte.

    Dei uma procurada, porem não achei muita coisa parecida com a minha e o pouco q encontrei, quando fazia a separação dos posts, ele pegava os posts do blog e não do portifolio.

A visualizar 5 respostas - de 1 a 5 (de um total de 5)
  • cyclop

    (@cyclop)

    para simplificar as coisas ( não quer dizer que seja a maneira mais correcta em termos de performance ) porque não: Listar as categorias, e em cada while de categorias listares os posts onde category_name=Categoria-actual?

    Thread Starter gabrielfernandes

    (@gabrielfernandes)

    Ola cyclop, o que tinha tentado fazer anteriormente foi quase isso que tu citou, porem estou tendo algumas dificuldades com as funcoes do WP e sua sintaxe. Mas de mareia resumida, queria listar todos os posts e dividi-los de acordo com suas categorias.

    Myst1010

    (@myst1010)

    Veja se era mesmo isso que você estava querendo.

    <h2>Artigos por Categorias</h2>
    	<?php	 $cats = get_categories(); foreach ($cats as &$cat) {
    			query_posts( 'cat='.$cat->cat_ID );
    			echo '<h5>Categoria - ' . $cat->cat_name . '</h5> <ul>'; while (have_posts()) { the_post();
    			echo '<li><a href="'; the_permalink(); echo '">'; if ( get_the_title() ){ the_title(); }else{ echo "Artigo sem T&iacute;tulo"; } echo '</a></li>'; }
    			echo '</ul>';
    		}?>
    cyclop

    (@cyclop)

    sim gabrielfernandes, eu entendi, e disse-te como fazer, faz copy paste código que o Myst1010 fez, deve de fazer aquilo que queres

    Thread Starter gabrielfernandes

    (@gabrielfernandes)

    Myst1010 ,muido obrigado primeiramente. Adicionei sei código, funcionou perfeitamente, do modo que queria, porem ele não esta pegando os posts do portefólio e sim do blog.

    Dando uma olhada na taxonomia encontrei as seguintes linhas:

    $term = get_term_by('slug', get_query_var('term'), get_query_var('taxonomy'));
        query_posts(array('post_type' => 'portfolio', 'works' => $term->slug, 'posts_per_page' => -1));

    Tentei utilizar o array pegando pelo post_type. Realmente pegou os posts do portefólio, porem nem todos e suas categorias não eram as mesmas que estão adicionadas a cada item do portefólio, e sem as categorias do blog.

    Creio que seja algo relacionado a esse slug. Alguém tem alguma ideia?

    Obrigado desde já

A visualizar 5 respostas - de 1 a 5 (de um total de 5)
  • O tópico ‘Separacao de posts por categorias’ está fechado a novas respostas.