Suporte » Temas » Dúvida para chamar categorias

  • Tudo bom pessoal?

    Bom, sou meio novo no WP, desenvolvi apenas dois sites simples e agora estou montando um portfolio nele.

    A minha dúvida é a seguinte, eu gostaria de criar uma página que chamassem duas categorias: ‘web’ e ‘impresso’. Estou usando o método que o leobaiano mostrou no post http://br.forums.wordpress.org/topic/mostrar-2-posts-de-cada-categoria?replies=2 que colo na íntegra aqui:` <?php
    /*
    Template Name: Portfolio
    */
    ?>
    <?php get_header(); ?>
    <style type=”text/css”>
    <!–
    .capa { display: block;}

    –>
    </style>

    <div id=”content” class=”grid_12″>
    <div class=”grid_0 post”>
    <?php
    // Cria uma instancia para cada categoria, neste caso as categorias
    // sãi web, noticias e videos
    $web_q = new WP_Query(‘category_slug=web&posts_per_page=5’);
    $impresso_q = new WP_Query(‘category_slug=impresso&posts_per_page=5’);
    ?>

    <div class=”grid_12″><img src=”http://gabrielleite.com.br/site/wp-content/uploads/2010/07/webDesign.png&#8221; alt=”Web Design” /></div>

    <?php
    // Monta o loop da categoria web
    if ($web_q->have_posts()) : while ($web_q->have_posts()) : $web_q->the_post();
    // Mostra as informações que você quer, aqui mostro o título e o
    // resumo?>

    “><?php the_excerpt(”);?>

    <?php

    // Fecha o loop e se não houver posts diz informa
    endwhile;
    else:
    echo “Não existem posts nesta categoria”;
    endif;

    // Reset a query para não influênciar na query padrão do WP
    wp_reset_query();

    // Repita o loop para as outras categorias e pronto
    ?>

    <div class=”grid_12″><img src=”http://gabrielleite.com.br/site/wp-content/uploads/2010/07/impresso.png&#8221; alt=”Impresso” /></div>

    <?php
    // Monta o loop da categoria impresso
    if ($impresso_q->have_posts()) : while ($impresso_q->have_posts()) : $impresso_q->the_post();
    // Mostra as informações que você quer, aqui mostro o título e o
    // resumo?>

    “><?php the_excerpt(”);?>

    <?php

    // Fecha o loop e se não houver posts diz informa
    endwhile;
    else:
    echo “Não existem posts nesta categoria”;
    endif;

    // Reset a query para não influênciar na query padrão do WP
    wp_reset_query();

    // Repita o loop para as outras categorias e pronto
    ?>
    </div><!– fim post//–>
    </div><!– end content div–>

    <?php get_footer(); ?>

    `

    Fiz algumas alterações mas não manjo nada de php.
    O que está ocorrendo de errado é o seguinte: na hora de puxar a categoria web tudo dá certo, mas quando puxa a categoria ‘impresso’, puxa também a categoria web.

    Alguém aí pode dar uma força?

Visualizando 3 respostas - 1 até 3 (de um total de 3)
  • Moderador Leo Baiano

    (@leobaiano)

    Parceiro, marca como código ou coloca no pastbin fica mais fácil da gente ver o código.

    Bom, pelo que vi seu código esta correto, tente colocar a linha:

    $impresso_q = new WP_Query(‘category_slug=impresso&posts_per_page=5’);

    que esta no inicio do código, logo após do primeiro wp_reset_query(), antes de iniciar o segundo loop, não tenho certeza que é isso mas tenta ai. Se não funcionar coloca seu código no pastbin ou marca como code aqui pra ficar mais fácil analisar.

    Criador do tópico glimaleite

    (@glimaleite)

    Leo, segue ai o codigo original do primeiro post como pastebin(n conhecia a ferramenta)
    <script src="http://pastebin.com/embed_js.php?i=QxnSv6X5"></script>

    vou mandar agora com a mudanca q eu fiz como vc sugeriu, porem nao deu certo…

    <script src="http://pastebin.com/embed_js.php?i=zZbdp0nm"></script>

    edit: maravilha, nao consigo botar esse negocio pra funcionar rs… mais tarde tento novamente

    Moderador Leo Baiano

    (@leobaiano)

    Seu pastbin é esse: http://pastebin.com/zZbdp0nm

    A linha 56 ta assim:

    // resumo?>

    As duas barras indicam que a linha é um comentário e não deve ser interpretado pelo código, logo o “?>” que fecha o código do PHP esta como comentário, da um enter depois da palavra “resumo” para que o “?>” não fique como comentário.

    Apaga a linha 20 que tem:

    $impresso_q = new WP_Query('category_slug=impresso&posts_per_page=5');

    Não precisa dela porque você já colocou ela na linha 46 como eu havia pedido no post anterior.

    Acredito que o erro era mesmo o comentário na linha 56, o estranho é que o unico erro que você disse aparecer era que o loop não funcionava quando na verdade deveria gerar um erro fatal. Faz ai as alterações que sugeri e retorna aqui com o resultado, manda um link da sua página pra que eu possa ver caso não resolva.

Visualizando 3 respostas - 1 até 3 (de um total de 3)
  • O tópico ‘Dúvida para chamar categorias’ está fechado para novas respostas.