WordPressでWebサイトを作っている場合、PC用テーマとモバイル用テーマを別々に用意して、アクセスしてきた端末を判別して表示するテーマを振り分けてWebサイトを運用をすることがあります。
特定のテーマだけページ分割させたい時ってどうする
ところで「PC用テーマだけページ分割をさせたくない」という場合は、フォーラムを参考にして(というかそのまんまなんですが)以下のコードをPC用テーマフォルダ内にあるfunctions.phpに書けばできます。
add_action( 'the_post', 'no_pageing_hook' ); function no_pageing_hook( $post ) { global $pages, $multipage, $numpages; $multipage = 0; $content = str_replace("\n<!--nextpage-->\n", '<!--nextpage-->', $post->post_content); $content = str_replace("\n<!--nextpage-->", '<!--nextpage-->', $content); $content = str_replace("<!--nextpage-->\n", '<!--nextpage-->', $content); $pages = array( str_replace('<!--nextpage-->', '', $content) ); $numpages = 1; }
コードがやっていること
フック「the_post」を使って、ページ分割の際に使用する「<!–nextpage–>」の文字列を削除しています。削除する前に「<!–nextpage–>」前後の改行コード「\n」を取り除いているところがポイントですね。
勉強になりました。
このページを共有する