web-dev-qa-db-ja.com

ページコンテンツではなく投稿のループを示すpage.php

私のフロントページはindex.phpを使って最新の投稿を表示します。

私のpage.phpには、上にwp_header、下にwp_footerがあり、その中間にあります。

while (have_posts()) : the_post();
    get_template_part( 'content', 'page' );
endwhile;

私のcontent-page.phpthe_content()とページのthe_title()をプリントアウトすることになっています、しかしそれはすべての記事の内容とタイトルを返します。何が足りないの?

ページは「デフォルトのテンプレート」に設定されています。

以下に私のpage.phpとcontent-page.phpを追加しました。

page.php:

<?php /* Page */ ?>
<?php get_header(); ?>
    <div class="container-fluid">
        <div class="container">
            <?php while (have_posts()) : the_post();
                      get_template_part( 'content', 'page' );
                  endwhile; ?>
        </div>
    </div>
<?php get_footer(); ?>

content-page.php

<?php /* The template used for displaying page content in page.php */ ?>
<?php
  echo '<div class="row">';
    echo '<div class="col-sm-12">';
      echo the_title( '<h2>', '</h2>');
      echo '<p>' . the_content() . '</p>';
    echo '</div>';
  echo '</div>';
?>

index.php

<?php /* Main file */ ?>

<?php get_header(); ?>

<div class="container-fluid">
  <div class="container">
    <?php
      if(have_posts()) :
        while (have_posts()) : the_post();
          echo '<div class="row';
          if($count > 2){
            echo ' hideme';
          }
          echo '">';
            echo '<div id="section-'. $count++ .'" class="col-sm-12" style="text-align:center;">';
              echo '<p><a href="' . get_permalink( get_the_ID() ) . '">';
              echo the_post_thumbnail();
              echo '<br>' . get_the_title() . ' // ' . get_the_category_list(', ') . '</a></p>';
            echo '</div>';
          echo '</div>';
        endwhile;
      endif;
    ?>
  </div>
</div>

<?php get_footer(); ?>
1
Sultenhest

上のコメントに記載されているあなたのクエリから、あなたが見ているページはそれがあなたのホームページ(例えばあなたのブログ)であると信じています。

Wp_queryオブジェクトで、次の点に注意してください。

[found_posts] => 8
[is_home] => 1

is_homeは、ホームページを表示していると考えていることを意味します。

あなたのファイルがあなたが言うようにセットアップされているなら、あなたはSettings> Readingの下であなたの管理者パネルをチェックし、あなたが見ているページがあなたのフロントページ表示セクション

そうでない場合は、index.phpファイルまたはhome.phpファイル、あるいはその両方に含まれるものに注意すると便利です。表示しているページは、自分のホーム/ブログページであると確信しています。

1
Privateer