簡體   English   中英

如何只獲得一個類別而不是全部

[英]How to get just one category and not all of them

這是問題所在:

我一直在使用此代碼來使其他帖子顯示在頁面末尾(作為列表),並且這些帖子應與訪問者當前正在閱讀的帖子屬於同一類別。 它工作正常,但是出現的問題是當帖子被分配到多個類別時,那么我有多個列表是不需要的。

如何將this限制為一個類別(按名稱,ID或第一個類別),以便在顯示具有多個類別的帖子時,循環僅顯示一個類別的帖子?

很多。

<?php global $post;
$categories = get_the_category();
foreach ($categories as $category) :
?>
<h3 class="naslovostalih">Ostali članci iz ove kategorije:</h3>
<ul class="clanciostalih">

<?php
$posts = get_posts('numberposts=10&category='. $category->term_id);
foreach($posts as $post) :
?>
<li>
<?php
$title = get_the_title($ID);
$link = get_permalink();
printf('<a class="linkpost" title="%s" href="%s">%s</a>', $title, $link, $title);
the_post_thumbnail('thumb-232');
echo '<div id="excerptcu">';
echo excerpt(25);
echo '</div>';
?>
<p class="more-link-wrapper2"><a href="<?php the_permalink(); ?>" class="read-more     button"><?php _e( 'Opširnije &raquo;', 'fearless' ); ?></a></p>
</li>
<?php endforeach; ?>
</ul>
<?php endforeach; ?>

您可以像在代碼中一樣將類別ID添加到get_posts中

而不是循環分類,請嘗試如下操作:這里3是分類ID

$posts = get_posts('category=3&numberposts=10');

另外,如果您想按名稱檢索特定類別的類別ID,則可以使用

get_cat_ID( $cat_name )

也許您可以只在您的foreach循環中采用第一類,而不是遍歷所有這些? 您可以通過將變量設置為

$first = true;

在循環之前。 然后,在“ if”中設置foreach循環,以檢查$ first == false。 如果是這樣,請執行循環。 在循環中,執行您的工作並設置$ first = true,它將僅迭代一次。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM