Wordpress - 在同一页面中获取页面

Wordpress - get pages in same page

我正在按部分创建一个 wordpress 自上而下的网站,但我不知道将页面分成不同部分的最佳方式是什么。 我还要考虑充电性能

<section id="about">
  <!-- Content of page -->
</section>
<section id="services">
  <!-- Content of page -->
</section>
<section id="contacts">
  <!-- Content of page -->
</section>

谢谢

我会在这里使用一个简单的 WP_Query 实例,并使用以下代码:

<?php 

// Set the WP_Query arguments
$args = array(
    'post_type' => 'page',

    // You need to change this to match your post IDs
    'post__in' => array( 10, 20, 30 ),
    'order_by' => 'post__in',
    'order' => 'DESC' // Might need to change this to "ASC"...
);

// Create the page section query
$page_section_query = new WP_Query( $args );

// Simple check...
if( $page_section_query->have_posts() ) :
    while( $page_section_query->have_posts() ) :
        $page_section_query->the_post();
        global $post;

        // Print out the section!
        ?>
        <section id="<?php echo esc_attr( $post->post_name ) ?>" <?php post_class( array( esc_attr( 'page-section-' . $post->post_name ) ) ); ?>>
            <!-- contents of the page section -->
        </section>
        <?php
    endwhile;

    wp_reset_postdata();
endif;
?>

简单有效,1个查询即可。如果您想要更多部分,请继续添加更多 post 个 ID。

如果您想避免使用 post ID 作为排序参数,您可以使用:menu_order。如果您想避免使用 post__in 参数,您可以将所有页面添加到页面父级并使用父级 post ID 并获取这些部分的所有页面子级。这将使解决方案更加模块化。

在此处阅读有关 WP_Query 的更多信息:https://codex.wordpress.org/Class_Reference/