2

各号のタイトルにちなんで名付けられたカテゴリを持つ、Issues (雑誌の号など) と呼ばれるカスタム分類法があります。「最新号」というページを作成し、サイトのメイン ナビゲーションにリンクを追加しました。

これは、現在ページ テンプレートにあるループです。

$categories = get_terms('issue', 'orderby=count&order=asc');
     foreach( $categories as $category ): 
     ?>
     <h3><?php echo $category->name; ?></h3>
     <?php
     $posts = get_posts(array(
     'post_type' => 'issue_posts',
     'taxonomy' => $category->taxonomy,
     'term' => $category->slug,
     'nopaging' => true,
     ));
     foreach($posts as $post): 
     setup_postdata($post); 

カテゴリと投稿を適切に並べ替えますが、これにより、すべてのカテゴリのすべての投稿が取り込まれます。最近追加されたカテゴリのみを表示するリンクが必要です。

4

2 に答える 2

1

最も最近追加された用語は、最も高い ID を持つ用語になります。ID の降順で並べ替えられた単一の用語を取得すると、最後に追加された用語が表示されます。

$args = array(
    'number' => 1,
    'orderby' => 'ID',
    'order' => 'DESC'
);

$recent_issue = get_terms( 'issue', $args );
于 2012-10-31T23:33:16.320 に答える
0

categoriesはWordpress にあるためtaxonomy、「最新」のものを示す日付は関連付けられていません。最近作成されたカテゴリが何であるかを追跡する必要がある場合はcreated_term、Wordpress ソースにある/wp-includes/taxonomy.phpと関数を使用できwp_insert_term()ます。

do_action("created_term", $term_id, $tt_id, $taxonomy);

$taxonomyカテゴリのはcategory(保存する前に確認してください) になり、$term_idはカテゴリ ID になります。このアクションにフックされた関数から呼び出して、呼び出しで使用するためupdate_option('latest_category_id', $term_id);に後で取得できます。get_option('latest_category_id');get_posts()

于 2012-10-31T21:09:54.727 に答える