如何在一个页面上显示所有页面的内容(带有链接)?

时间:2016-09-09 作者:gulliver

我想在一个页面上显示所有页面的内容,并提供每个页面的链接。

这听起来像是一个愚蠢的请求,但对于快速查看小型站点上可用的内容非常有用。

使用下面的代码,我可以获得我想要的大部分信息,但不知道如何添加永久链接。

<?php $pages = get_pages();
foreach ($pages as $page_data) {
$content = apply_filters(\'the_content\', $page_data->post_content);
$title = $page_data->post_title;
$slug = $page_data->post_name;
echo $title;
echo $slug;
echo $content;}
?>

4 个回复
SO网友:Rishabh

请尝试此代码以显示页面内容列表。页面标题将是该页面的链接。

$args = array(
    \'post_type\' => \'page\',    //specifying post type
    \'posts_per_page\' => 10,  //No. of Pages to show
);

$loop = new WP_Query( $args );

while ( $loop->have_posts() ) : $loop->the_post();?>
<h3><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><font style="color:#666666;"><?php the_title();?></a></h3>
<?php    the_content(__(\'Continue Reading\'));             
endwhile;

SO网友:bdtheme

Try This:

<?php
    global $paged;  
        if( get_query_var( \'paged\' ) ) {
            $paged = get_query_var( \'paged\' );
        } elseif( get_query_var( \'page\' ) ) {
            $paged = get_query_var( \'page\' );
        } else {
            $paged = 1;
        }

        $args = array(
            \'post_type\'     => \'page\',
            \'paged\'         => $paged,
        );

        $blog_query = new WP_Query($args);
    ?>

    <section>
        <?php if ( $blog_query->have_posts() ) : ?>
        <?php while ( $blog_query->have_posts() ) : $blog_query->the_post(); ?>
        <?php get_template_part( \'content-parts/content\', get_post_format() ); ?>
        <?php endwhile; ?>
        <?php endif; ?>
    </section><!-- End #content -->
?>
SO网友:Aamer Shahzad

因为所有页面数据都存储在$page_data, 你可以通过页面IDget_permalink(); 获取foreach循环内每个页面的永久链接。

$pages = get_pages();
if ( !empty( $pages ) ) :
    foreach ($pages as $page_data) {
        $content = apply_filters(\'the_content\', $page_data->post_content);
        $title = $page_data->post_title;
        $slug = $page_data->post_name;
        echo \'<a href="\' . get_permalink( $page_data->ID ) . \'">\' . $title . \'</a>\';
        echo $slug;
        echo $content;
    }
endif;

SO网友:Malisa

也许有更好的方法来实现你想要的,但要用你所拥有的来回答你的问题:

$permalink = get_the_permalink($page_data->ID);

相关推荐

如何在WooCommerce总价金额->ProductPages下增加保证金

我对ProductPage上的woocommerce价格金额有两个问题。第一个问题:我想在总价格金额下增加更多保证金,并按下“添加到卡”按钮我怎样才能做到这一点?(示例见下图)第二我只想显示总价。现在我得到了可变产品的最低价格,显示在产品标题下面,以及总价格金额。我只想显示总价。已经谢谢你了!