お問い合わせ

SnowMonkeyカスタマイズ|ページネーションに『次へボタン』を追加する

SnowMonkeyのアーカイブページで表示されるページネーションをカスタマイズしたいと思って少し調べたのでまとめておきます。

Cocoonのアーカイブページのページネーションは、ド派手な次へボタンが表示されるのでとても便利です。

以前、Cocoonと同じように次へボタンが表示されるカスタマイズをSWELLに対して行った記事を書きました。

SnowMonkeyでも同じようなボタンを追加したいと思ったので、カスタマイズを行いましたので、この記事でご紹介します。

Cocoonの次へボタンをSnowMonkeyのページネーションに追加する

変更するテンプレートパーツ

SnowMonkeyのアーカイブページのページネーションは、template-parts/archive/pagination.phpテンプレートパーツを呼び出しています。

<?php
/**
 * @package snow-monkey
 * @author inc2734
 * @license GPL-2.0+
 * @version 11.3.3
 *
 * renamed: template-parts/pagination.php
 */

use Inc2734\WP_Basis\App\Model\Pagination;

global $wp_query;

if ( empty( $wp_query->max_num_pages ) || $wp_query->max_num_pages < 2 ) {
	return;
}

Pagination::the_posts_pagination();

このテンプレートパーツを書き換えれば、カスタマイズできます。

カスタマイズコード

snow_monkey_template_part_render_フックを使います。

<?php
/**
 * @param $html テンプレートパーツの出力HTML
 * @param $name テンプレートパーツの名前
 * @param $vars テンプレートパーツのリクエスト配列
 */
add_filter(
	'snow_monkey_template_part_render_template-parts/archive/pagination',
	function( $html, $name, $vars ) {
global $wp_query;

ob_start();

if(empty($paged)) $paged = 1;


//全ページ数
$pages = $wp_query->max_num_pages;
if(!$pages){
  $pages = 1;
}

//ページが1ページしかない場合は出力しない
if($pages != 1) {
  //次のページ番号
  if ( $pages == $paged ) {
    $next_page_num = $paged;
  } else {
    $next_page_num = $paged + 1;
  }

  //現在のページ番号が全ページ数よりも少ないときは「次のページ」タグを出力
  if ( $paged < $pages ) {
    echo '<div class="pagination-next"><a href="'.get_pagenum_link($next_page_num).'" class="pagination-next-link">次のページ</a></div>';
  }

}
echo $html;

return ob_get_clean();
	},
	10,
	3
);

まとめ

最近では、サイト制作でもSnow Monkeyを使う機会がめっきり減っています。

SWELLでできることはSWELLでやってしまうのが簡単で、それでダメならArkhe、それでもダメならSnowMonkeyという優先順位になっています。

役に立ったら他の人にもシェア!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Wordpressのカスタマイズ歴10年のプロです。無料から有料までWordpressテーマの使用経験は豊富。SWELLやCocoon、Snowmonkey、Arkheなどテーマのカスタマイズに関する知見も深い。Webサイト制作からカスタマイズまで仕事を請け負った実績は多数あり。
第二種情報処理技術者試験(合格率:15.5%)、Google アナリティクス上級者向けコースGoogle タグ マネージャーの基礎コース上級ウェブ解析士HTML5プロフェッショナル認定 レベル2

コメントを閉じる

コメント

コメントする

コメントは日本語で入力してください。(スパム対策)

クリックできる目次