exclude を使うと指定した ID を除外してくれるみたいです。
ここを参考にしてみて下さい。
お返事ありがとうございます。
お教えいただいた exclude を使用しようとしたら
ループが延々と続くようになってしまって、元の形に戻したら
今度は the_content の中身が表示中の記事と同じ内容になってしまいました。。。
調べてみたら、query_posts で the_content のそれぞれの内容が出てくるとわかったので、その通りやってみたら、またループが延々と続きます。
表題の件以前の問題になってしまいましたが、loop-single.php内で同カテゴリーをループで
表示させることはできないのでしょうか?
以下はコードです。
記事を開いている時に同じカテゴリ(カテゴリID1)のループを表示します。
loop-single.php
<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
投稿内容
</div><!-- #post-## -->
<div class="cate">
<?php /* ループを開始します。 */ ?>
<?php
global $query_string;
query_posts($query_string . '&posts_per_page=3&cat=1' );
?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="date"><?php echo date("Y年m月d日", strtotime($post->post_date)); ?></div>
<h3 class="entry-title"><?php the_title(); ?></h3>
<div class="entry-content"><?php the_content(); ?></div>
<?php endwhile; endif; ?>
</div>
<?php endwhile; // end of the loop. ?>
上記はループで躓いていますが、さらにこれに
「表示中の記事は除く」処理を行いたいです。
宜しくお願いします。
<?php $current_id = get_the_ID();
$myposts = get_posts('numberposts=5&category=1&exclude=' . $current_id );
if ($myposts) :
foreach( $myposts as $post ) :
setup_postdata( $post ); ?>
<div class="date"><?php echo date("Y年m月d日", strtotime($post->post_date)); ?></div>
<h3 class="entry-title"><?php the_title(); ?></h3>
<div class="entry-content"><?php the_content(); ?></div>
<?php endforeach; endif; ?>
これでいけるかな
思い描いていた通りの表示になりました!
phpわからないなりに色々試してみてまったく動かなくて
途方に暮れていたので本当に本当に助かりました。
知らない関数(?)が入っていたり、なぜいただいたコードでちゃんと
動くのかまったくわからないので精査してみます。
ほんとうにほんとうにありがとうございます!