困っているようです。ワードプレスの投稿ページ テンプレートに 3 つ以上の投稿がある場合、特定のテキストを表示する必要があります。(ループシングル.php)
関連するカテゴリの投稿の総数が 3 以上であるかどうかを検出できるように、十分に動的である必要があります。
これは、カテゴリテンプレートページ(archive.php)でうまく機能するコードを見つけましたが、投稿テンプレートで使用するとめちゃくちゃになります。
<?php
$count = 1;
if (have_posts()) : while(have_posts()): the_post(); ?>
<!-- Less than 3 post - nothing shown at all -->
<?php $count++;
endwhile; endif; ?>
<?php if ($count > '3') { ?>
<div> This line shown when 3 or more posts are in current post category</div>
<?php } ?>
注: loop-single.php テンプレート ファイルでこれを機能させようとしています。
どんな助けでも大歓迎です、ありがとう
上記のソリューションを含むようにコードが更新されました。いくつかの構文エラーを修正しましたが、T-STRING エラーがスローされるようになりました: 解析エラー: 構文エラー、予期しない T_STRING
ここに私の完全なページコードがあります:
<?php /* Start loop */ ?>
<?php while (have_posts()) : the_post(); ?>
<?php roots_post_before(); ?>
<article <?php post_class() ?> id="post-<?php the_ID(); ?>">
<?php roots_post_inside_before(); ?>
<header>
<h1 class="entry-title"><?php the_title(); ?></h1>
<!-- POST DATE STAMP -->
<div class="post-top">
<div class="date-stamp">
<b><?php the_time('M d'); ?></b>
</div>
</header>
<div class="entry-content">
<?php the_content(); ?>
</div>
<footer>
<hr />
<?php
$cat = get_query_var('cat');
$posts = get_posts(array('category' => $cat));
if(count($posts) >= 3)
{
<!-- POST FOOTER RELATED CONTENT (2 HORIZONTAL) -->
<h5>Featured: <?php $cats=get_the_category(); echo $cats[0]->cat_name; ?></h5>
<div id="foot-container">
<?php echo do_shortcode("[catlist categorypage=yes comments=yes numberposts=2 class=horizontal-2 offset=2 orderby=date order=desc thumbnail=yes thumbnail_size=75 thumbnail_class=footer-thumb title_tag=p title_class=footer-link comments_tag=p comments_class=comment-count]"); ?>
<div style="clear:both;"></div>
</div>
<hr />
}
else
{
Why hello there LESS than three
}
?>
</footer>
<?php comments_template(); ?>
<?php roots_post_inside_after(); ?>
</article>
<?php roots_post_after(); ?>
<?php endwhile; /* End loop */ ?>