對於分頁,大多情況下我們在用在列表頁面的,當一個列表分類下的文章數量過多的時候,我們需要透過分頁來實現讓使用者在多個頁面來檢視。如下圖:

但有時某篇文章為了闡述清楚某個問題,需要透過文字加圖片的方式來配合展現,就會導致整個單獨文章頁面篇幅過長,而且也影響頁面的載入速度,這時我們也可以給單獨的文章頁面來進行分頁顯示。
WordPress 長文章 single.php 分頁的操作步驟:
第一步:進入自己做網站的後臺,在外觀下找到 「編輯」 選項,然後找到文章頁面模組 single.php,在 single.php 中找到下面的程式碼
<?php the_content(); ?>
第二步:找到上面的程式碼之後,在其下方新增 WordPress 自帶的分頁功能函式程式碼:
<?php wp_link_pages(); ?>
第三步:第二步的程式碼可以實現簡單的分頁效果,如果你想讓分頁按鈕更加美觀的話,可以將第二步的程式碼替換成下面的呼叫程式碼:
<?php wp_link_pages(array('before' => '<div> 分頁閱讀:', 'after' => '', 'next_or_number' => 'next', 'previouspagelink' => '上一頁', 'nextpagelink' => "")); ?> <?php wp_link_pages(array('before' => '', 'after' => '', 'next_or_number' => 'number', 'link_before' =>'<span>', 'link_after'=>'</span>')); ?> <?php wp_link_pages(array('before' => '', 'after' => '</div>', 'next_or_number' => 'next', 'previouspagelink' => '', 'nextpagelink' => "下一頁")); ?>
並且透過下面的 CSS 程式碼來控制分頁按鈕的顯示樣式,直接複製下面的 CSS 樣式到 style.css 檔案中,這樣就可以實現下面的效果

/**頁面分頁**/
.fenye{text-align:center;margin:0px auto 10px;font-weight:bold}
.fenye span{background-color:#DDDDDD;color:#fff;font-weight: bold;margin:0px 1px;padding:1px 6px;display:inline-block;text-decoration:none;border:1px solid #e0e0e0;}
.fenye a{text-decoration:none;}
.fenye a span{background-color:#F6F6E8;font-weight: normal;color: #000;text-decoration: none;}
.fenye a:hover span{background-color:#DDDDDD;color: #fff;}
第四步:在文章中需要分頁的位置插入分頁程式碼 【必須在程式碼文字模式下插入】
<p><!--nextpage--></p>
第五步:如果你覺得每次使用分頁程式碼的方法比較麻煩,可以透過在編輯器上方新增一個 「分頁按鈕」 來使用,即在文章中需要分頁的地方點一下 「分頁按鈕」 就會自動的新增分頁程式碼。 【此步可做可不做】
1 、找到 /wp-includes/class-wp-editor.php 檔案。查詢 『wp_more』, 標籤:(在 366 行處)
$mce_buttons = apply_filters('mce_buttons', array('bold', 'italic', 'strikethrough', '¦', 'bullist', 'numlist', 'blockquote', '¦', 'justifyleft', 'justifycenter', 'justifyright', '¦', 'link', 'unlink', <SPAN style="TEXT-DECORATION: underline"><STRONG><SPAN style="COLOR: #ff0000; TEXT-DECORATION: underline">'wp_more',</SPAN></STRONG></SPAN> '¦', 'spellchecker', 'fullscreen', 'wp_adv' ), $editor_id);
2 、在 『wp_more』 後新增 『wp_page』,(含單引號和逗號) 。修改後程式碼如下:
$mce_buttons = apply_filters('mce_buttons', array('bold', 'italic', 'strikethrough', '¦', 'bullist', 'numlist', 'blockquote', '¦', 'justifyleft', 'justifycenter', 'justifyright', '¦', 'link', 'unlink', <SPAN style="TEXT-DECORATION: underline"><STRONG><SPAN style="COLOR: #ff0000; TEXT-DECORATION: underline">'wp_more','wp_page',</SPAN></STRONG></SPAN> '¦', 'spellchecker', 'fullscreen', 'wp_adv' ), $editor_id);
3 、此時,你就可以在後臺寫文章及編輯文章頁面的文字編輯器上看到一個跟 more 標籤按鈕相似的圖示。
同樣,在程式碼編輯器也會相應出現一個 nextpage 按鈕。
第六步:消除分類後不同頁面的文章的標題相同的問題,避免影響網站 SEO 最佳化。在主題模板檔案 header.php 找到類似 <title>……</title> 程式碼,將其替換為如下程式碼。
<?php if ( is_single() ) { ?><title><?php echo trim(wp_title('',0)); ?><?php if (get_query_var('page')) { echo '-第'; echo get_query_var('page'); echo '頁';}?> — <?php bloginfo('name'); ?></title><?php } ?>
第七步:實現分頁功能後,會導致 Feed 頁面的文章被分頁,一般只顯示第一頁的內容,解決方法:開啟 wp-includes 目錄下的 query.php 檔案,找到下面這行程式碼 (大概在 3578 行)
if ( strpos( $content,'<!–nextpage–>' ) ) {
把它修改為下面這行程式碼。
if ( strpos( $content, '<!--nextpage-->' ) && (!is_feed()) ) {
這樣我們就完成了完美的長文章分頁閱讀的效果了。