【WordPress】スマホとPCで記事表示件数を切り替える方法

こんにちは。

 

今回はWordPressにて「スマホとPCで記事表示件数を切り替える方法」を解説します。

 

当メディアはPC版の時に9件、スマホ版では10件表示させています。

 

流れとしてはWordPress管理画面でPC版の表示件数を設定して、コード内にスマホ版の表示件数を設定する記述をします。

 

WordPress:PC版の表示件数を設定する

PC版の表示件数は、WordPressの管理画面から「設定>表示設定」にて変更可能です。

 

WordPress:スマホ版の表示件数を設定する

function.phpに以下のコードを追加します。

 

//スマホ版のみ表示件数10件
add_action('pre_get_posts','change_limit_mobile');

function change_limit_mobile($query){

$new_limit = 10;

$iphone = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
$android = strpos($_SERVER['HTTP_USER_AGENT'],"Android");
$ipad = strpos($_SERVER['HTTP_USER_AGENT'],"iPad");
$berry = strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry");
$ipod = strpos($_SERVER['HTTP_USER_AGENT'],"iPod");

if (( $iphone || $android || $ipad || $ipod || $berry ) && $query->is_main_query()){
set_query_var('posts_per_page',$new_limit);
}
}

 

 

6行目の「$new_limit」にスマホの表示件数を設定します。

 

8~12行目でユーザーの端末情報を取得しています。

まとめ

今回ご紹介した方法以外にもWordPressでは「query_posts」や「WP_Query」を使用する方法がありますが、結局一番簡単に表示件数を設定できるのはこの方法です。

 

また、スマホとPCでWordPressの表示件数を変えられるプラグインもありますが、とても簡単な作業ですのでプラグインを入れるまでもない作業でしょう。

 

プラグインを入れるとどうしても重くなってしまうため、極力自分で実装できるようになるのが理想的ですね^^

 

以上、「【WordPress】スマホとPCで記事表示件数を切り替える方法」でした!