web-dev-qa-db-ja.com

ブログページID ==最初の投稿IDが表示されるのはなぜですか。

私が何か悪いことをしている可能性があります。現在私はメインのブログページとしてindex.phpを使用しています。ブログ用のページ設定があり、それを[設定]で設定します。ブログページIDを取得しようとすると、常に最初の投稿IDが表示されます。通常のループ以外に追加のクエリを実行していません。

自分のコードに投稿IDとページIDが表示されるのはなぜですか。

Index.phpコード:

<?php get_header(); ?>

<?php get_sidebar(); ?>

<?php
    echo $post->ID;  // First Post ID
    echo get_queried_object_id(); // First Post ID
?>

<div id="content" class="blog">
<?php if(have_posts()) : ?>
                <?php while(have_posts()) : the_post(); ?>
                    <div <?php post_class('blog-entry') ?> id="post-<?php the_ID(); ?>">
                        <h1>
                            <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>">
                                <?php the_title(); ?>
                            </a>
                        </h1>
                        <small>
                            by Company <?php the_time('F jS, Y') ?> / 
                            <a href="<?php the_permalink(); ?>/#comments">Share Comment</a>
                        </small>

                        <div class="entry">
                            <?php the_excerpt(); ?>
                        </div>

                        <p class="postmetadata">
                            <span style="text-align: left; float: left;">
                                <a href="<?php the_permalink(); ?>" title="Read More">Continue Reading &raquo;</a>
                            </span>
                        </p>
                        <div class="clear"></div>
                    </div>
                <?php endwhile; ?>
                <div id="blogNav">
                    <span class="prev"><?php previous_posts_link('&laquo; Previous Page'); ?></span>
                    <span class="next"><?php next_posts_link('Next Page &raquo;'); ?></span>
                </div>
            <?php endif; ?>
</div>
<?php get_footer(); ?>
1
Howdy_McGee

静的フロントページと異なる投稿ページを使用する場合の '投稿ページ' IDは次のとおりです。

get_option( 'page_for_posts' )

ある文脈では:

if( is_home() && get_option( 'page_for_posts' ) ) { 
  $page_ID = get_option( 'page_for_posts' ); 
}
2
Michael