亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > CMS > Wordpress > 正文

WordPress 單頁面上一頁下一頁實現方法

2024-09-07 00:52:15
字體:
來源:轉載
供稿:網友

WordPress的文章頁頁有實現上一篇下一篇的功能函數,不過我們想在單頁page.php里面實現上一頁下一頁的功能,previous_post_link()和next_post_link() 函數還不能完全滿足我的需要,所以就自己寫函數實現.

頁面有分級功能,需求是按 menu order 排序的子級頁面之間有上一篇、下一篇鏈接,如:

Themes(父級頁面)

---- zBench(子級頁面1)

---- zBorder(子級頁面2)

---- zSofa(子級頁面3)

如果當前頁面是 zBorder,那么就要上一篇鏈接是 zBench 的,下一篇鏈接是 zSofa 的,把下面函數代碼放入 functions.php(注:函數隨手寫的,可能不夠精簡).

  1. /** 
  2.  * get subpage previous/next page link by zwwooooo 
  3.  */ 
  4. function subpage_nav_link($prevText=''$nextText='') { 
  5.     global $post
  6.     if ( !$post->post_parent ) return null; //如果不是子頁面返回Null 
  7.     $args = array
  8.         'sort_order' => 'ASC'
  9.         'sort_column' => 'menu_order'
  10.         'child_of' => $post->post_parent, 
  11.         'post_type' => 'page' 
  12.     ); 
  13.     $pages = get_pages($args); 
  14.     $num = count($pages); 
  15.     $i = 0; 
  16.     $index = -1; 
  17.     foreach ($pages as $page) { 
  18.         if ($page->ID == $post->ID) { 
  19.             $index = $i
  20.             break
  21.         } 
  22.         ++$i
  23.     } 
  24.     if ($i == 0) { 
  25.         $prev = ''
  26.         $next = $pages[$index+1]; 
  27.     } elseif ($i == $num-1) { 
  28.         $prev = $pages[$index-1]; 
  29.         $next = ''
  30.     } else { 
  31.         $prev = $pages[$index-1]; 
  32.         $next = $pages[$index+1]; 
  33.     } 
  34.     if ($prev) { 
  35.         if ($prevText) { 
  36.             if ( substr_count($prevText'%title') > 0 ) { 
  37.                 $explode = explode('%title'$prevText); 
  38.                 $prevText = $explode[0] . get_the_title($prev->ID) . $explode[1]; 
  39.             } 
  40.         } else { 
  41.             $prevText = get_the_title($prev->ID); 
  42.         } 
  43.         $prevlink = '<a class="previous-page-link" href="' . get_page_link($prev->ID). '">' . $prevText . '</a>'
  44.     } 
  45.     if ($next) { 
  46.         if ($nextText) { 
  47.             if ( substr_count($nextText'%title') > 0 ) { 
  48.                 $explode = explode('%title'$nextText); 
  49.                 $nextText = $explode[0] . get_the_title($next->ID) . $explode[1]; //Vevb.com 
  50.             } 
  51.         } else { 
  52.             $nextText = get_the_title($next->ID); 
  53.         } 
  54.         $nextlink = '<a class="next-page-link" href="' . get_page_link($next->ID). '">' . $nextText . '</a>'
  55.     } 
  56.     return array($prevlink$nextlink); 

[函數]

subpage_nav_link($prevText, $nextText)

[參數]

$prevText:為前一篇文章鏈接文字,為空時默認是頁面標題

$nextText:為下一篇文章鏈接文字,為空時默認是頁面標題;

例如:一般的主題是在 page.php 的 loop 循環里面,不知道就在 the_content(); 下面吧,插入調用代碼:

  1. <?php 
  2. if ( function_exists('subpage_nav_link') ) { 
  3.     if ( $subpage_nav_link = subpage_nav_link() ) { 
  4.         echo $subpage_nav_link[0]; //上一篇(頁面)鏈接 
  5.         echo $subpage_nav_link[1]; //下一篇(頁面)鏈接 
  6.     } 
  7. ?> 

注:可以用 if (!$subpage_nav_link[0]) 來判斷有沒有上一篇,同樣 if (!$subpage_nav_link[1]) 來判斷有沒有下一篇.

PS:$prevText 和 $nextText 還支持字符組合,如 subpage_nav_link('oo %title xx', '') 這樣的話,前一篇文章鏈接文章會變成“oo 頁面名 xx”

另一篇實用文章:實現wordpress文章頁調用同分類上/下一篇文章

wordpress提供的顯示上一篇、下一篇文章的函數代碼是按照發布順序調用的,前幾天做的wordpress小說模板,由于使用每個分類添加一部小說《博客吧首款wordpress小說網站主題模板wpnovel》,如果使用這樣的上下篇文章調用順序顯示不合適,讓文章頁顯示同分類下的上一篇、下一篇文章才是正道,wordpress是強大的,總能滿足用戶的想法,通過搜索找到了相關的函數代碼.

默認直接調用的代碼:

  1. <?php previous_post_link('上一篇: %link') ?> 
  2. <?php next_post_link('下一篇: %link') ?> 

當文章處于首篇或末篇時,會顯示空白,但可以通過增加判斷還填補空白.

  1. <?php if (get_previous_post()) { previous_post_link('上一篇: %link');} else {echo "已是最后文章";} ?> 
  2. <?php if (get_next_post()) { next_post_link('下一篇: %link');} else {echo "已是最新文章";} ?> 

經過測試雖然顯示同分類下的文章,但首篇文章和末尾的文章會不顯示對應的提示信息“已是最后文章”和“已是最后文章”,只要在get_previous_post()函數中指定一下文章所屬分類ID便能使代碼完全有效.

下面是完整的代碼:

  1. <?php 
  2. $categories = get_the_category(); 
  3.         $categoryIDS = array(); 
  4.         foreach ($categories as $category) { 
  5.             array_push($categoryIDS$category->term_id); 
  6.         } 
  7.         $categoryIDS = implode(","$categoryIDS); 
  8. ?> 
  9. <?php if (get_previous_post($categoryIDS)) { previous_post_link('上一篇: %link','%title',true);} else { echo "已是最后文章";} ?> 
  10. <?php if (get_next_post($categoryIDS)) { next_post_link('上一篇: %link','%title',true);} else { echo "已是最新文章";} ?> 

打開主題目錄下的文章頁single.php,在要顯示的位置添加代碼,保存文件即可.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文欧美日本在线资源| 米奇精品一区二区三区在线观看| 国产精品久久久久9999| 成人欧美一区二区三区在线湿哒哒| 亚洲一区中文字幕| 国产精品91免费在线| 国产欧美欧洲在线观看| 精品性高朝久久久久久久| 日韩在线小视频| 欧美激情久久久| 亚洲成人网av| 欧美一级高清免费| 都市激情亚洲色图| 亚洲人成电影网| 亚洲人精选亚洲人成在线| 久久天天躁日日躁| 亚洲人成伊人成综合网久久久| 国产精品第一区| 日韩成人激情影院| 最近2019免费中文字幕视频三| 亚洲免费影视第一页| 国产成人亚洲精品| 91av在线播放| 美女999久久久精品视频| 日韩黄色高清视频| 性欧美在线看片a免费观看| 国产色综合天天综合网| 亚洲理论片在线观看| 日韩精品视频在线免费观看| 国产成人精品综合久久久| 久久久国产精彩视频美女艺术照福利| 国产一区二区三区在线| 久久久噜噜噜久噜久久| 亚洲毛茸茸少妇高潮呻吟| 国产日韩欧美中文在线播放| 欧美成人免费播放| 综合网日日天干夜夜久久| 91中文字幕一区| 成人免费网站在线观看| 91午夜在线播放| 国产精品久久久久一区二区| 九九热精品视频国产| 国产精品三级美女白浆呻吟| 亚洲电影av在线| 亚洲中国色老太| 疯狂蹂躏欧美一区二区精品| 中文字幕精品国产| 日韩美女写真福利在线观看| 亚洲乱码国产乱码精品精| 国产精品高清免费在线观看| 欧美在线免费看| 日韩国产欧美精品在线| 色偷偷88888欧美精品久久久| 欧美黑人巨大精品一区二区| 美女国内精品自产拍在线播放| 久久久免费精品视频| 在线观看日韩av| 亚洲欧美综合图区| 中文字幕亚洲一区二区三区五十路| 欧美日韩一区二区在线播放| 精品露脸国产偷人在视频| 97成人精品区在线播放| 国产性猛交xxxx免费看久久| 日韩视频免费在线| 久久精品影视伊人网| 国内精品400部情侣激情| 国产精品福利在线观看| 成人欧美在线视频| 亚洲成人网av| 成人激情视频网| 国产精品久久久久91| 国产美女主播一区| 国产成人精彩在线视频九色| 日韩av片电影专区| 成人网在线免费观看| 日韩一区二区三区xxxx| 色悠久久久久综合先锋影音下载| 欧美日韩亚洲系列| 国产精品露脸av在线| 亚洲国产精品yw在线观看| 亚洲人成网站免费播放| 日本在线精品视频| 尤物精品国产第一福利三区| 成人免费激情视频| 伊人成人开心激情综合网| 亚洲2020天天堂在线观看| 91av视频在线| 久久久久五月天| 一区二区三区国产在线观看| 欧美日韩中文字幕在线| 91牛牛免费视频| 91久久精品美女| 国产精品久久久一区| 欧美激情在线有限公司| 精品视频偷偷看在线观看| 亚洲一区二区久久久久久| 欧美日韩不卡合集视频| 亚洲第一精品电影| 久久视频精品在线| 69av成年福利视频| 欧洲精品毛片网站| 久久久免费高清电视剧观看| 亚洲人成电影网站色www| 国产欧美在线视频| 97超级碰碰人国产在线观看| 亚洲综合精品伊人久久| 亚洲国产精品一区二区三区| 欧美精品久久久久| 国产日韩欧美在线播放| 91网站在线免费观看| 91成人在线观看国产| 亚洲欧美激情在线视频| 日韩精品在线观看一区| 亚洲国产又黄又爽女人高潮的| 性欧美长视频免费观看不卡| 九九精品视频在线| 亚洲综合中文字幕68页| 日韩av在线电影网| 国产精品爽黄69天堂a| 91av在线播放视频| 国产精品高潮呻吟久久av无限| 国模叶桐国产精品一区| 欧美放荡办公室videos4k| 国产精品亚洲精品| 亚洲精品suv精品一区二区| 亚洲va欧美va国产综合剧情| 亚洲欧美国内爽妇网| 91色视频在线导航| 欧美人在线视频| 九九热最新视频//这里只有精品| 最近2019中文免费高清视频观看www99| 欧美日韩一区二区三区在线免费观看| 久久国产精品久久久| 亚洲free性xxxx护士hd| 按摩亚洲人久久| 97香蕉久久超级碰碰高清版| 中文字幕欧美日韩va免费视频| 自拍偷拍亚洲一区| 久久久久成人精品| 国产精品尤物福利片在线观看| 92看片淫黄大片看国产片| 久久中文字幕国产| 亚洲欧美综合区自拍另类| 亚洲国内高清视频| 777午夜精品福利在线观看| 亚洲精品久久久久| 亚洲福利视频久久| 亚洲综合精品一区二区| 国产精品一区久久| 久久成人精品电影| 久久久久久久久久久成人| 欧美大片免费观看| 97香蕉久久超级碰碰高清版| 欧美日韩在线视频一区二区| 国产成人精品免费久久久久| 国内精品久久久久久中文字幕| 精品国产欧美一区二区五十路| 国产高清视频一区三区| 欧美久久精品午夜青青大伊人| 国产精品视频久| xxx成人少妇69| 亚洲国产精品久久久久秋霞蜜臀| 国产欧美精品日韩| 日韩国产精品一区|