サポート » 使い方全般 » 特定カテゴリー記事の連番表示について

  • 解決済 camera

    (@seesawcamera)


    はじめまして。
    下記の質問を参考に、投稿記事に古い順に連番を表示することができたのですが、これを特定のカテゴリーにだけ振ることは出来るのでしょうか?

    「投稿のナンバーを表示する」
    http://ja.forums.wordpress.org/topic/6617

    例えば、
    カテゴリA:10件の記事
    カテゴリB:5件の記事
    があった場合、
    カテゴリBの一覧を表示したとき、5、4、3、2、1と表示させたいということです。
    (間にカテゴリAがあっても飛ばして番号を振りたい) 

    どうぞ宜しくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • gogoweb

    (@gogoweb)

    前投稿にあったのをちょっと改造してこんな感じでどうでしょうか?

    function ps_number_cat( $post_type = 'post', $op = '<=' ,$cat_id = '1') {
    	global $wpdb, $post;
    	$categories = get_the_category($post->ID);
    	$in_cat=0;
    	foreach($categories as $category){if($category->term_id == $cat_id){$in_cat=1;}}
    	if($in_cat){
    	$post_type = is_array($post_type) ? implode("','", $post_type) : $post_type;
    	$number = $wpdb->get_var("
    		SELECT COUNT( * )
    		FROM $wpdb->posts as p
    		LEFT JOIN $wpdb->term_relationships as r ON p.ID = r.object_ID
    		LEFT JOIN $wpdb->term_taxonomy as t ON r.term_taxonomy_id = t.term_taxonomy_id
    		LEFT JOIN $wpdb->terms as terms ON t.term_id = terms.term_id
    		WHERE post_date {$op} '{$post->post_date}'
    		AND post_status = 'publish'
    		AND post_type = ('{$post_type}')
    		AND t.taxonomy = 'category' AND terms.term_id = '{$cat_id}'
    	");
    	return $number;
    	}else{
    	return "";
    	}
    }

    $cat_idに含まれたカテゴリーのIDの順番を数えて、そのカテゴリーに属していない投稿に対しては空を返します。

    トピック投稿者 camera

    (@seesawcamera)

    gogowebさん
    ありがとうございます!
    上記の方法で解決できました。

    大変助かりました!

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「特定カテゴリー記事の連番表示について」には新たに返信することはできません。