Snow Monkeyの記事詳細下の次前のリンクをシンプルにする

Snow Monkeyの記事下にある、次前のリンクはもともと素敵なのですが、もっとシンプルにしたいときもあります。そんなときは既存のをはずして、新たに取り付けます。

既存の次前を外す

まずは外します。__return_false関数はとにかくfalseを返すWordPressの関数です。なにかしらフィルターを使ってある箇所を、なくしたい場合はこの手法をよく利用します。

/**
 * デフォルトのページネーションを非表示
 */
add_filter(
	'snow_monkey_pre_template_part_render_template-parts/content/prev-next-nav',
	'__return_false'
);

新たにシンプルな次前を取り付ける

次に記事の下にある、Snow Monkeyのアクションフック snow_monkey_after_entry_content を利用し、ここに独自のシンプルな、次前のリンクを追加します。

このときについでに一覧へのリンクも追加しました。
$post_typeの中身を変えることで、カスタム投稿タイプにも利用できます。

if ( get_previous_post_link() ) などとすることで、次や前の記事がない場合には非表示もしています。

最後の行に無理くり、CSSをつけてますが。実際にはStyle.cssなどに入れるようにします。

/**
 * カスタム投稿タイプの最後の次前一覧
 */
function megane_single_pagenation() {
	$post_type = get_post_type(); // 投稿タイプを取得.
	if ( is_singular( $post_type ) ) {
		$content  = '<ul class="singlular-nav">';
		if ( get_previous_post_link() ) {
			$content .= '<li class="go-previous">' . esc_attr( get_previous_post_link( '%link', '< 前へ' ) ) . '</li>';
		}
		$content .= '<li class="go-archive"><a href="' . esc_attr( get_post_type_archive_link( $post_type ) ) . '">一覧へ</a></li>';
		if ( get_next_post_link() ) {
			$content .= '<li class="go-next">' . esc_attr( get_next_post_link( '%link', '次へ >' ) ) . '</li>';
		}
		$content .= '</ul>';
		$content .= '<style>.singlular-nav{display:flex;justify-content:center;gap:20px;}.singlular-nav li{list-style:none;}</style>';
		echo $content;
	}
}
add_action( 'snow_monkey_after_entry_content', 'megane_single_pagenation' );

ということで、ここでは次前のリンクを設定しましたが、このように既存のものを消して、新たな内容を追加するという手法も、割とよく使います。

できれば、そのまま既存のものを利用したいところですが、臨機応変にというところでしょうか。