8wired

とりあえずやってみるブログ

WordPress

STINGER PLUS+のNEW POSTをカテゴリに対応させる

投稿日:

STINGERをアップデートする度に書いているネタですが、STINGER PLUS+でも書いていきます。

修正するファイルは、サムネイルを表示している場合にはnewpost-thumbnail-on.php、サムネイルを表示していない場合にはまたはnewpost-thumbnail-off.phpです。子テーマを作成してから編集することをお薦めします。

「ここから」~「ここまで」の部分を追加します。

<?php
if ( trim( $GLOBALS["stdata67"] ) !== '' ) {
	$newentrypost_no = $GLOBALS["stdata67"];
} else {
	$newentrypost_no = 5;
}
$args = array(
	'posts_per_page' => $newentrypost_no,
);
// ここから
if( is_category() ) { //カテゴリーページ
       	$cat= get_queried_object();
        $categories = get_categories("child_of=".$cat->term_id);
       	$cats = array($cat->term_id);
       	foreach($categories as $category)
       	  	$cats[] = $category->term_id;
       	$args['category__in'] = $cats;
} elseif( is_single() ) { //シングルページ
       	$cat = get_the_category();
        $categories = get_categories("child_of=".$cat[0]->cat_ID);
       	$cats = array($cat[0]->cat_ID);
       	foreach($categories as $category)
       	  	$cats[] = $category->term_id;
       	$args['category__in'] = $cats;
	$args['post__not_in'] = array(get_the_ID());
}
// ここまで
$st_query = new WP_Query( $args );
?>

カテゴリページでは表示しているカテゴリの、シングルページでは表示している記事のカテゴリの最新記事が表示されるようになります。カテゴリが階層化されている場合には、子カテゴリの記事も表示されます。またシングルページでは表示している記事は除外されます。

代替のプラグインを作成しようと思いつつ、未だ作成していないダメな私・・・。

-WordPress
-

Copyright© 8wired , 2017 All Rights Reserved Powered by STINGER.