在這篇文章中,我們將討論如何讓你的主題實現 WordPress 2.7 的評論巢狀功能。
在 Wopus 中文平臺新主題-wMagazine 即將完工的時候,我們拿到了 WordPress 2.7 的最新版本 Beta1,第一時間對其進行了詳盡的測試。在 WordPress 2.7 之前,要實現評論巢狀,我們必須開啟 WordPress Thread Comment
這個外掛,而在即將釋出的 WordPress 2.7 中,Thread Comment 將被整合進來,使用 wp_list_comments
函式即可呼叫巢狀評論 (Thread Comment) 。但是,WordPress 開發團隊還沒有任何資料說明如何使用這個新函式,在參考了
default 主題的 comments.php 檔案後,我們大致瞭解了其工作流程。也想使自己的主題支援巢狀評論 (Thread
Comment) 這個功能?那就繼續看下去吧。

  1. 首先,新增 comment-reply JavaScript,讓評論巢狀 (Thread comment) 能夠正常執行
  2. 在 wp_head() 函式之前新增如下函式:
    < ?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?>

  3. 判斷 WordPress 版本,有選擇性地使用 wp_list_comments 函式
  4. WordPress 2.7 透過函式 wp_list_comments 來顯示所有留言,可之前版本並沒有這個函式,所以,我們需在 comments.php 檔案中新增如下程式碼:

    if (function_exists('wp_list_comments')) :
    // new comments.php stuff
    else :
    // old comments.php stuff
    endif;

  5. WordPress 2.7 的評論 Loop
  6. < ?php if ($comments) : ?>
    < ?php comments_number('No Comments', 'One Comment', '% Comments' ); ?>

    < ?php wp_list_comments(); ?>
    < ?php previous_comments_link() ?>
    < ?php next_comments_link() ?>

    < ?php else : // this is displayed if there are no comments so far ?>
    < ?php if ('open' == $post->comment_status) : ?>

    < ?php else : // comments are closed ?>

    Comments are closed.

    < ?php endif; ?>
    < ?php endif; ?>

     

  7. 實現巢狀回覆留言
  8. 首先需要要把評論框 (Comment Form) 放入一個 ID 為 respond 的 DIV 中,然後並在評論框中新增如下程式碼:
    < ?php comment_id_fields(); ?>

  9. 當然,我們也可以取消回覆
  10.  

    < ?php cancel_comment_reply_link(); ?>

     

以上程式碼參照 Wopus 中文平臺的新主題 wMagazine,請根據自身情況合理安排位置