有時單一文章頁面篇幅過長,會影響頁面載入速度和使用者體驗,這時我們需要使用WordPress長文章分頁顯示。實作分頁有二種方法,一種是使用wordpress長文章分頁插件,另一種是透過修改程式碼來實現。
WordPress長文章分頁的操作步驟:
第一步:進入WordPress網站後台,在外觀下找到「編輯」選項,然後找到文章頁面模組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 找到類似
<?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()) ) {
這樣我們就完成了完美的長篇文章分頁閱讀的效果了。
更多wordpress相關技術文章,請造訪wordpress教學欄位進行學習!
以上是wordpress怎麼髮長文章的詳細內容。更多資訊請關注PHP中文網其他相關文章!