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

首頁 > 網(wǎng)站 > 建站經(jīng)驗 > 正文

Typecho實現(xiàn)評論無限嵌套顯示實例

2024-08-30 19:06:38
字體:
供稿:網(wǎng)友

本文章來給大家介紹一下Typecho實現(xiàn)評論無限嵌套顯示實例,希望此方法對各位同學(xué)會有所幫助,好吧,寫下這個題目我就覺得好像又沒什么可說的,所以我估計會寫的很簡略,誰叫我就是個懶胖子呢.

評論列表的輸出,官方的是下面這個樣子的,代碼如下:

<?php $comments->listComments(); ?>

官方的輸出在定義CSS的時候有點別扭,所以很多主題都用到了螞蚱的那篇《自定義評論列表的樣式》中的方法(螞蚱是大神啊~~).

接下來的內(nèi)容是基于螞蚱的代碼,嗯,廢話了這么多,先上一下效果,就是下圖這個樣子的,第一次回復(fù)縮進(jìn),第二層之后便不再縮進(jìn),保持對齊.

Typecho實現(xiàn)評論無限嵌套顯示實例

下面說實現(xiàn)方法,首先看螞蚱原來的一段代碼,代碼如下:

  1. <?php function threadedComments($comments$options) { 
  2.     $commentClass = ''
  3.     if ($comments->authorId) { 
  4.         if ($comments->authorId == $comments->ownerId) { 
  5.             $commentClass .= ' comment-by-author';   
  6.         } else { 
  7.             $commentClass .= ' comment-by-user';   
  8.         } 
  9.     }  
  10.     $commentLevelClass = $comments->_levels > 0 ? ' comment-child' : ' comment-parent';   
  11. ?>    
  12. <?php } ?>   
  13.  
  14. <li id="li-<?php $comments->theId(); ?>" class="comment-body<?php  
  15. if ($comments->_levels > 0) { 
  16.     echo ' comment-child'
  17.     $comments->levelsAlt(' comment-level-odd'' comment-level-even');//開源軟件:Vevb.com 
  18. else { 
  19.     echo ' comment-parent'
  20. $comments->alt(' comment-odd'' comment-even'); 
  21. echo $commentClass;  
  22. ?>">  

這一段是判斷評論 ID,父級評論還是子級評論以及判斷評論 ID 的奇偶數(shù)什么的,其實就在子評論部分加一層深度的判斷就可以了,修改后的代碼如下:

  1. <?php function threadedComments($comments$options) { 
  2.     $commentClass = ''
  3.     if ($comments->authorId) { 
  4.         if ($comments->authorId == $comments->ownerId) { 
  5.             $commentClass .= ' comment-by-author';   
  6.         } else { 
  7.             $commentClass .= ' comment-by-user';   
  8.         } 
  9.     }  
  10.     $commentLevelClass = $comments->_levels > 0 ? ' comment-child' : ' comment-parent';   
  11.     $depth = $comments->levels +1; //添加的一句 
  12. ?>   
  13. <?php } ?>   
  14.  
  15. <li id="li-<?php $comments->theId(); ?>" class="comment-body<?php  
  16. if ( $depth > 1 && $depth < 3 ) {  //此處的判斷要修改 
  17. echo ' comment-child'
  18. $comments->levelsAlt(' comment-level-odd'' comment-level-even'); 
  19. }  
  20. elseif ( $depth > 2 ) { 
  21. echo ' comment-child2'
  22. $comments->levelsAlt(' comment-level-odd'' comment-level-even'); 
  23. }  
  24. else { 
  25. echo ' comment-parent'
  26. $comments->alt(' comment-odd'' comment-even'); 
  27. echo $commentClass;  
  28. ?>"> 

其實就是一句話的事,就是加了個判斷,子評論中是否深度超過了2,然后給一個不同的id來定義樣式,我還假裝像模像樣的搞了篇文章出來,好吧,我就是個水貨.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 涡阳县| 鹤山市| 翁牛特旗| 定边县| 南岸区| 通州市| 红河县| 屏边| 达孜县| 通化市| 衢州市| 梧州市| 乌拉特后旗| 三亚市| 鹿泉市| 屏南县| 新泰市| 九江县| 云南省| 西华县| 忻城县| 嘉禾县| 双流县| 松滋市| 金坛市| 洛川县| 赤城县| 邢台市| 蓬莱市| 景洪市| 河曲县| 隆尧县| 东源县| 砚山县| 宜阳县| 沂水县| 万全县| 富蕴县| 红桥区| 阿克陶县| 靖远县|