やりたいこと
Aというカテゴリーの記事を開いている場合は最近の記事一覧をAカテゴリーにするかつ、前後ページへのリンクもAカテゴリーに変更する。
B,C,Dカテゴリーの記事を開いている場合はAカテゴリーが記事一覧と前後ページの誘導リンクに含まれない様にする。
方法
previous_post_linkの第四引数で調整できる。next_post_linkも同じ容量。
第一と第二引数の説明は省いて、第三引数は同じカテゴリー内の指定を決めている。trueにすれば同じカテゴリーのみの表示に変更できる。
第四引数では除外したいカテゴリーのidを指定している。複数指定する場合は配列もしくは『,』で区切る方法がある。
通常はカテゴリーidが4であれば除外してそれ以外の記事を表示し、記事idが4の場合は同じカテゴリーを表示する様にしている。
<?php
// カテゴリーidが4の場合は他の記事と混ざらない様にしている(今回だとAカテゴリー)
$category = get_the_category();
$remove_cat = 4;
$same_cat = FALSE;
if($category[0]->term_id == 4) {
$remove_cat = "";
$same_cat = TRUE;
}
?>
// $assign_catに値を入れて除外するか処理を分けている。
<p>
<?php previous_post_link('%link', '%title', $same_cat, $remove_cat); ?>
</p>
<p>
<?php next_post_link('%link', '%title', $same_cat, $remove_cat); ?>
</p>
おまけ
zipファイルへの圧縮方法。以下はhogeフォルダーからhage.zipを作成する。macのfinderだと時間かかったので備忘録として置いておく。
zip -r hoge.zip hoge/