首頁  >  文章  >  CMS教程  >  wordpress如何實現讀者牆

wordpress如何實現讀者牆

藏色散人
藏色散人原創
2020-01-03 09:45:562942瀏覽

wordpress如何實現讀者牆

wordpress如何實作讀者牆?

本文實例講述了wordpress實作讀者牆的方法。分享給大家供大家參考。具體實作方法如下:

推薦:《wordpress教學

1.複製PAGE.php頁面,改名為readerwall.php,然後在其頂部添加如下程式碼:

程式碼如下:

<?php 
/* 
Template Name: Reader wall 
*/ 
?>

提示:你可以先修改部分程式碼再運行。

2.在需要加入讀者牆的位置加入以下程式碼:

程式碼如下:

<!-- start 读者墙 Edited By iSayme--> 
<?php 
$query="SELECT COUNT(comment_ID) AS cnt, comment_author, comment_author_url, comment_author_email FROM (SELECT * FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->posts.ID=$wpdb->comments.comment_post_ID) WHERE comment_date > date_sub( NOW(), INTERVAL 24 MONTH ) AND user_id=&#39;0&#39; AND comment_author_email != &#39;改成你的邮箱账号&#39; AND post_password=&#39;&#39; AND comment_approved=&#39;1&#39; AND comment_type=&#39;&#39;) AS tempcmt GROUP BY comment_author_email ORDER BY cnt DESC LIMIT 39";//
?>

大家把管理員的信箱改成你的,最後的這個39是選取多少個頭像,大家可以按照自己的主題進行修改,來適合主題寬度,程式碼如下:

#程式碼如下:

<?php 
$wall = $wpdb->get_results($query); 
$maxNum = $wall[0]->cnt; 
foreach ($wall as $comment) 
{ 
$width = round(40 / ($maxNum / $comment->cnt),2);//此处是对应的血条的宽度 
if( $comment->comment_author_url ) 
$url = $comment->comment_author_url; 
else $url="#"; 
$avatar = get_avatar( $comment->comment_author_email, $size = &#39;36&#39;, $default = get_bloginfo(&#39;wpurl&#39;).&#39;/avatar/default.jpg&#39; ); 
$tmp = "<li><a target="_blank" href="".$comment->comment_author_url."">".$avatar."<em>".$comment->comment_author."</em> <strong>+".$comment->cnt."</strong></br>".$comment->comment_author_url."</a></li>"; 
$output .= $tmp; 
} 
$output = "<ul class="readers-list">".$output."</ul>"; 
echo $output ; 
?> 
<!-- end 读者墙 -->

提示:你可以先修改部分程式碼再執行。

3.在主題目錄中style.css加入以下樣式:

程式碼如下:

.readers-list{line-height:18px;text-align:left;overflow:hidden;_zoom:1} 
.readers-list li{width:200px;float:left;*margin-right:-1px} 
.readers-list a,.readers-list a:hover strong{background-color:#f2f2f2;background-image:-webkit-linear-gradient(#f8f8f8,#f2f2f2);background-image:-moz-linear-gradient(#f8f8f8,#f2f2f2);background-image:linear-gradient(#f8f8f8,#f2f2f2)} 
.readers-list a{position:relative;display:block;height:36px;margin:4px;padding:4px 4px 4px 44px;color:#999;overflow:hidden;border:#ccc 1px solid;border-radius:2px;box-shadow:#eee 0 0 2px} 
.readers-list img,.readers-list em,.readers-list strong{-webkit-transition:all .2s ease-out;-moz-transition:all .2s ease-out;transition:all .2s ease-out} 
.readers-list img{width:36px;height:36px;float:left;margin:0 8px 0 -40px;border-radius:2px} 
.readers-list em{color:#666;font-style:normal;margin-right:10px} 
.readers-list strong{color:#ddd;width:40px;text-align:right;position:absolute;right:6px;top:4px;font:bold 14px/16px microsoft yahei} 
.readers-list a:hover{border-color:#bbb;box-shadow:#ccc 0 0 2px;background-color:#fff;background-image:none} 
.readers-list a:hover img{opacity:.6;margin-left:0} 
.readers-list a:hover em{color:#EE8B17;font:bold 12px/36px microsoft yahei} 
.readers-list a:hover strong{color:#EE8B17;right:150px;top:0;text-align:center;border-right:#ccc 1px solid;height:44px;line-height:40px}

提示:你可以先修改部分程式碼再執行.

希望本文所述對大家的WordPress建站有所幫助。

以上是wordpress如何實現讀者牆的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn