如何在个性化页面中列出所有帖子?WordPress

时间:2015-12-16 作者:Pedro Quezado

嗯,我创建了一个自定义页面,需要它返回all 在站点上注册的帖子,如索引。我尝试以正常的方式创建一个自定义页面,并为其分配索引中的相同代码。然而,当我尝试列出所有帖子时,他只是将我返回到页面,就像发布页面一样。

<?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(); ?>
你知道我们什么时候创建个性化页面吗?准备好了,只是我不希望这个页面成为一个帖子,我希望它能返回我已经拥有的所有帖子,但她没有返回她所称的内容,它是一样的。。。懂

1 个回复
SO网友:jgraup

有一种非常简单的方法可以使用get_posts. 背景post_status => \'any\' 可以把你们都抓起来。

下面的代码查询帖子、页面和附件。循环并将它们全部输出到无序列表中。

$pages = get_posts( array(
  \'post_type\'   => \'page\',
  \'post_status\' => \'any\', 
  \'numberposts\' => -1, 
));

$posts = get_posts( array(
  \'post_type\'   => \'post\',
  \'post_status\' => \'any\', 
  \'numberposts\' => -1,
));

$attachments = get_posts( array(
  \'post_type\'   => \'attachment\',
  \'post_status\' => \'any\', 
  \'numberposts\' => -1,
));


echo \'<ul>\';

echo \'<li><h2>POSTS</h2></li>\';

foreach ( $posts as $post ) {
    $link = get_the_permalink ( $post->ID );
    echo "<li>{$post->post_type} - {$post->post_status} - {$post->ID} - <a target=\\"_blank\\" href=\\"{$link}\\">{$post->post_title}</a></li>";    
}

echo \'<li><h2>PAGES</h2></li>\';

foreach ( $pages as $post ) {
    $link = get_the_permalink ( $post->ID );
    echo "<li>{$post->post_type} - {$post->post_status} - {$post->ID} - <a target=\\"_blank\\" href=\\"{$link}\\">{$post->post_title}</a></li>";    
}

echo \'<li><h2>ATTACHMENTS</h2></li>\';

foreach ( $attachments as $post ) {
    $link = get_the_permalink ( $post->ID );
    echo "<li>{$post->post_type} - {$post->post_status} - {$post->ID} - <a target=\\"_blank\\" href=\\"{$link}\\">{$post->post_title}</a></li>";    
}

echo \'</ul>\';
如果你真的想抓住一切:

$any = get_posts( array(
  \'post_type\'   => \'any\',
  \'post_status\' => \'any\', 
  \'numberposts\' => -1, 
));

相关推荐

如何将Java脚本添加到Custom-Page.php模板?

如何将javascript添加到自定义页面。php模板?如何使从w3schools ajax教程获得的以下javascript在自定义页面上工作。php模板?任何帮助都将不胜感激。工作javascript包含在以下HTML中:<!DOCTYPE html> <html> <style> table,th,td { border : 1px solid black; border-collapse: collapse;&#x