国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > Wordpress > 正文

編寫PHP腳本來實現WordPress中評論分頁的功能

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

這篇文章主要介紹了編寫PHP腳本來實現WordPress中評論分頁的功能的方法,包括上一頁下一頁和導航式分頁功能的添加,需要的朋友可以參考下。

方法說明

首先來看看可能被用到的方法. 打開文件 wp-includes/link-template.php 你會發現 WordPress 2.7 多了 4 個針對評論分頁的方法:

get_comments_pagenum_link

$pagenum: 頁碼

$max_page: 最大頁數

返回鏈接地址. 在本次應用中不會被用到, 但大家應該知道有這個方法, 將方便你制作插件.

next_comments_link

$label: 顯示的字樣, 默認是 » Newer Comments. 但我一直認為這是 bug, 應該是 Newer Comments » 吧?

$max_page: 最大頁數

顯示跳轉到下一頁的鏈接.

previous_comments_link

$label: 顯示的字樣, 默認是 « Older Comments.

顯示跳轉到上一頁的鏈接.

paginate_comments_links

$args: 字符串參數組

- base: 頁面 URL

- format: 我也不知道是什么. 誰能告訴我?

- total: 最大頁數

- current: 當前頁碼

- echo: 是否顯示, 默認為顯示. 不顯示時返回字符串 HTML.

- add_fragment: hash, 默認是 #comments. 為求統一, 方便理解, 也免得修改, 建議制作主題時 評論部分用 id="comments"

顯示評論分頁或返回評論分頁的 HTML.

實例說明

1. 上一頁和下一頁

這是最簡單, 也是最常被提到的, 效果與文章分頁沒什么兩樣.

  1. <div id="commentnavi"> 
  2.  <span class="floatleft"><?php previous_comments_link(__('&laquo; Older Comments')) ?></span> 
  3.  <span class="floatright"><?php next_comments_link(__('Newer Comments &raquo;')) ?></span> 
  4.  <div class="fixed"></div> 
  5. </div> 

2. 導航式分頁

對訪客最透明, 使用起來最方便的, 效果與使用 WP-PageNavi 分頁的效果相仿.

  1. <div id="commentnavi"> 
  2.  <?php paginate_comments_links(); ?> 
  3. </div> 

看看前面的兩個例子, 好像我們要的功能都可以實現了. 但是你覺不覺得有點怪怪的? 如果后臺中選擇不顯示評論分頁, 或者評論數不夠分頁, 也要顯示 id="commentnavi" 的外框嗎? 不! 我們要改改這個程序.

可以通過調用方法 get_option('page_comments') 來獲取后臺的評論分頁選項.

我們還可以調用方法 paginate_comments_links('echo=0') 來知道評論是否足夠并需要進行分頁處理.

3. 上一頁和下一頁 (改進)

  1. <?php 
  2.  // 如果用戶在后臺選擇要顯示評論分頁 
  3.  if (get_option('page_comments')) { 
  4.  // 獲取評論分頁的 HTML 
  5.  $comment_pages = paginate_comments_links('echo=0'); 
  6.  // 如果評論分頁的 HTML 不為空, 顯示上一頁和下一頁的鏈接 
  7.  if ($comment_pages) { 
  8. ?> 
  9.  <div id="commentnavi"
  10.  <span class="floatleft"><?php previous_comments_link(__('&laquo; Older Comments')) ?></span> 
  11.  <span class="floatright"><?php next_comments_link(__('Newer Comments &raquo;')) ?></span> 
  12.  <div class="fixed"></div> 
  13.  </div> 
  14. <?php 
  15.  } 
  16.  } 
  17. ?> 

4. 導航式分頁 (改進)

  1. <?php 
  2.  // 如果用戶在后臺選擇要顯示評論分頁 
  3.  if (get_option('page_comments')) { 
  4.  // 獲取評論分頁的 HTML 
  5.  $comment_pages = paginate_comments_links('echo=0'); 
  6.  // 如果評論分頁的 HTML 不為空, 顯示導航式分頁 
  7.  if ($comment_pages) { 
  8. ?> 
  9.  <div id="commentnavi"
  10.  <?php echo $comment_pages; ?> 
  11.  </div> 
  12. <?php 
  13.  } 
  14.  } 
  15. ?> 

對于最新的評論分頁功能, 我有點自己的看法, 也隨便說一下吧.

評論分頁并不完美. 如果外面某個鏈接轉跳到 http://www.example.com/#5630, 但是編號為 5630 的評論并不在第一頁, 那么就無法定位到這條評論上面, 轉跳過來的兄弟的感覺會比較不爽.

另外, WordPress 的評論分頁不是 AJAX 應用 (為瀏覽器的兼容性考慮, 以后也不太可能是), 所以翻頁會相當耗時. 所以我建議, 就算要分頁, 也要將每頁顯示的評論數設大一點. 30? 50? 100? 因博而異.

好了, 大概你已經知道該怎么使用了? CSS 就不多說了, 各有所好嘛, 這個不好說.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 瑞丽市| 永靖县| 松桃| 渝北区| 淮南市| 尖扎县| 宜春市| 东港市| 涪陵区| 囊谦县| 乌兰察布市| 阿坝县| 德惠市| 蚌埠市| 安塞县| 张北县| 土默特右旗| 禹州市| 沾益县| 景德镇市| 六安市| 长寿区| 高阳县| 大连市| 麟游县| 瑞昌市| 铜川市| 临高县| 偏关县| 黄浦区| 浦城县| 汝州市| 英德市| 广安市| 普兰县| 华宁县| 华亭县| 罗源县| 东莞市| 兴文县| 武定县|