カテゴリー毎にsingleページでページ送りをする

2013.10.26 2019.05.10wordpressカスタマイズ
カテゴリー毎にsingleページでページ送りをする

がっつりwordpress
どっぷりwordpress

何をやってるかというと
page毎にテンプレートを作ったり…

ページ毎にh1を変更設定できるようにごにょごにょしたり…
でも共通の部分はphpファイル一つにしてそこで変更すれば
全体が変更できるようにとか
ゴリゴリいじり倒し中

久しぶりなので覚えてない忘れたこともモリモリ
モリモリ食べたい食欲の秋、おなかすいた

投稿記事のカテゴリー毎に一覧を作成
こちらはカテゴリーページ毎にデザインが別になる為以下のように作る
例えば、「news」(カテゴリID2とする)と[question」という2種類のカテゴリーがあったとしよう
(3種類にしたいときはもっと増えますが)

<?php
$post = $wp_query->post;
$category = get_the_category( $post->ID );
$cat = $category[0];
while ( $cat->parent > 0 )
  $cat = get_category( $cat->parent );

if ( '2' == $cat->term_id ) {
include(TEMPLATEPATH . '/category-news.php');
} else {
include(TEMPLATEPATH . '/category-question.php');
}
?>

こんな感じでID2のnewのときはcategory-news.php
さらにこのカテゴリーphpの中でsideとかheaderとか
ゴニョゴニョ…(ノ゚д゚(; ̄Д ̄)

さて、本題に入りましょうか
(あまりにも簡単なので書くことないので脱線しておりました。)
例えば、newsの時はsingle-news.php
questionの時はsingle-question.php
で個別の投稿記事を表示します。

各記事には前後の記事へのページ送りをつけます。
(前後の記事へのリンクね)

その時にもともとのshingle.phpにある記述だと
全ての記事が対象でページ送りになってしまいます。
これをカテゴリー内だけでページ送りするには

バージョンによってやり方違うかもですがだいたいこんなんがデフォルト

<?php previous_post_link('« %link', '%title'); ?>
<?php next_post_link('%link »', '%title'); ?>

これを

<?php previous_post_link('« %link', '%title', TRUE, ''); ?>
<?php next_post_link('%link »', '%title', TRUE, ''); ?>

TRUEつけるだけ!!!
これだけ!!!
ワードプレス簡単!!!!!!!