一つの記事を複数のページに分割するのはWordPressの標準機能で可能

2011/08/30

一本の記事を複数のページに分割して、ページ送りで表示するサイトってありますよね。

WordPressの標準機能で同じことができます。

Wordpress logo

方法

HTML編集モードで、記事中のページを分割したい場所に

<!–nextpage–>

と入力します(ビジュアルモードではダメですよ)。対応しているテーマを使っている場合はそれだけ。

対応していないテーマを使っている場合は、single.phpの

<?php the_content(); ?>

の下に

<?php wp_link_pages(); ?>

と入れます。それだけで、あとは全自動です。

ただ、この標準設定のままだと

ページ1 ページ2 ページ3

の様に表示されてイマイチかっこよくないですね。テンプレートタグのCodexを見ながらあれこれと設定をいじって、CSSで調整すれば思い通りに表示させることもできますが、メンドクサイ。

そんなときは、標準テンプレートの Twenty-ten とか Twenty-eleven からコードをパクるを参照するのが一番手っ取り早いです。

僕の場合、Twenty-ten の single.php から

<?php wp_link_pages( array( 'before’ => '<div class="page-link" style="text-align: center;">’ . __( 'ページ:’ ), 'after’ => '</div>’ ) ); ?>

というコードをコピーして、CSSから

.page-link { clear: both; color: #000; font-weight: bold; margin: 0 0 22px 0; word-spacing: 0.5em;}
.page-link a:link,
.page-link a:visited { background: #f1f1f1; color: #333; font-weight: normal; padding: 0.5em 0.75em; text-decoration: none;}
.home .sticky .page-link a { background: #d9e8f7;}
.page-link a:active,
.page-link a:hover { color: #ff4b33;}

をコピーしました。

たったこれだけの作業ですので、興味のある WordPress ユーザーさんはお試しあれ。

注意事項

ただし、一本の記事を複数ページに分割するのって、読者から見たらウザいだけ

UXという意味では最悪に近いので、それが絶対に必要であるという理由がある記事じゃなかったらやらない方がいいです。