WordPress.org

Brasil

Suporte

Suporte » Plugins e Códigos » Como listar todos os posts em pagina personalizada?

Como listar todos os posts em pagina personalizada?

  • Bem, criei uma pagina personalizada onde preciso que ela retorne todos os posts que tem cadastrado no site, como se fosse a home.
    Tentei fazer da forma normal, criando uma pagina personalizada e atribuindo a elá o mesmo código que se encontra na index.php, porem quando eu tento listar todos os posts ele apenas me retorna a pagina como se fosse uma pagina de publicação.

    <?php
    /*
    Template Name: Novos Posts
    */
    get_header(); ?>
    <div class="cont_marg">
        <div class="pad_sd">
    		<?php if (have_posts()) : ?>
    			<ul class="lista-filmes">
    				<?php while ( have_posts() ) : the_post(); ?>
    				    <?php $my_meta = get_post_meta($post->ID,'_my_meta',TRUE); ?>
    				    <li id="post-<?php the_ID(); ?>" title="<?php the_title(); ?>">
    				        <div class="titulo-box open-sans">
    				            <h2 class="titulo-box-link">
    				                <a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a>
    				            </h2>
    				        </div>
    				        <div class="capa">
    				            <div class="fluccs">
    				                <div class="boxxer"><?php echo $my_meta['durat']; ?>min</div>
    				            </div>
    				            <a href="<?php the_permalink(); ?>" class="absolute-capa no-text effect"><?php the_title(); ?></a>
    				            <?php the_post_thumbnail(array(158,226)); ?>
    				            <div class="flutuador" style="background:none;">
    				                <div class="audioy"><?php echo the_qualt($my_meta['qualt']); ?></div>
    				                <div class="anolanc"><?php echo $my_meta['ano']; ?></div>
    				    		</div>
    				        </div>
    				        <div class="views"><?php echo getPostViews(get_the_ID()); ?> visitas</div>
    				    </li><!-- #post-<?php the_ID(); ?> -->
    				<?php endwhile; ?>
    				<?php post_pagination();?>
    			</ul>
    		<?php endif; ?>
        </div><!-- .pad_sd -->
    </div><!-- .cont_marg -->
    <?php get_footer(); ?>

    Sabe quando nos criamos uma pagina personalizada? Pronto só que eu não quero que essa pagina seja um post, quero que ela me retorne todos os posts que já tenho, mas ela só me retornou o que ela pesa ser o dela mesmo.. Entenderão?

Visualizando 1 resposta (de um total de 1)
  • Oi @pedroquezado,

    Conseguiu resolver? O que você precisava era trocar o loop principal por uma chamada diferente para WP_Query.

    Trocar

    <?php if (have_posts()) : ?>
    	<ul class="lista-filmes">
    		<?php while ( have_posts() ) : the_post(); ?>

    por

    <?php 
    
    $filmes = new WP_Query(array(
    	'posts_per_page' => -1
    ));
    
    if ($filmes->have_posts()) : ?>
    	<ul class="lista-filmes">
    		<?php while ( $filmes->have_posts() ) : $filmes->the_post(); ?>

    já traria os posts como você precisa.

    Se você conseguiu resolver, mesmo que de outra forma, não esquece de voltar, contar como e marcar seu tópico como resolvido, tá?

Visualizando 1 resposta (de um total de 1)
  • Você deve fazer login para responder a este tópico.
Pular para a barra de ferramentas