怎樣建一個(gè)WordPress評(píng)論統(tǒng)計(jì)頁面
來源:程序員人生 發(fā)布時(shí)間:2014-03-01 16:27:44 閱讀次數(shù):2803次
在網(wǎng)站上顯示訪問者的評(píng)論,是提高訪問者參與度的方法之一。 此外,你還可以推薦在網(wǎng)站上推薦一些精彩評(píng)論,并給出評(píng)論者的網(wǎng)站鏈接。 下面我們就為這些評(píng)論者和他們的評(píng)論設(shè)計(jì)一個(gè)專用的頁面模板。先看看效果示意圖吧。
簡單地說,這個(gè)教程會(huì)告訴你怎樣:
- 創(chuàng)建一個(gè)頁面模板
- 利用不同參數(shù),在代碼中用SQL查詢來獲取評(píng)論
- 在頁面上生成一個(gè)只有管理員有權(quán)查看的版塊
- 為頁面添加一個(gè)評(píng)論插件
創(chuàng)建一個(gè)頁面模板
創(chuàng)建頁面模板的最簡單方法是打開主題中的page.php文件,該文件內(nèi)容大致如下:
<?php get_header(); ?>
<div id="content">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="post" id="post-<?php the_ID(); ?>">
<h2 class="page_title"><?php the_title(); ?></h2>
<?php the_content(); ?> </div>
<?php comments_template(); ?>
<?php endwhile; endif; ?>
</div> <?php get_sidebar(); ?>
<?php get_footer(); ?>
復(fù)制page.php文件中的內(nèi)容并粘貼到新的文件中,在新文件最上方添加以下代碼:
<?php /* Template Name: Comments Central */ ?>
然后保存文件。 對(duì)如何命名頁面模板文件沒有強(qiáng)制要求,但在命名時(shí)你可以用上“pt-comment-central.php”這樣的前綴以便辨認(rèn)。 到目前為止,我們還沒有在這個(gè)新建的頁面模板中添加新內(nèi)容,但是模板已經(jīng)開始運(yùn)行并且可以在“創(chuàng)建新頁面”菜單中被選定。
獲取評(píng)論
我們將在這個(gè)新建的頁面模板中顯示四種不同方式的評(píng)論:
- 最新評(píng)論
- 最新Trackback/Pingback
- 評(píng)論次數(shù)最多的評(píng)論者
- 被評(píng)論次數(shù)最多的文章
首先從“最新評(píng)論”部分開始:
<h3>Recent Comments</h3>
<ul id="cc-recent-comments">
<?php
$max = 7; // number item to get global $wpdb;
$sql = "SELECT c.*, p.post_title FROM
$wpdb->comments c INNER JOIN
$wpdb->posts p ON (c.comment_post_id=p.ID) WHERE comment_approved = '1'
AND comment_type not in ('trackback','pingback') ORDER BY comment_date DESC LIMIT $max";
$results = $wpdb->get_results($sql);
$template = '%g <a href="%au">%an</a> on <a href="%pu#comment-%cid">%pt</a>';
$echoed = 0; foreach ($results as $row)
{ $tags = array('%ct','%cd','%g','%pt','%pu','%au','%an','%cid');
$replacements = array($row->comment_title,
$row->comment_date,get_avatar($row->comment_author_email,'32'),
$row->post_title, get_permalink($row->comment_post_ID),
$row->comment_author_url,
$row->comment_author,
$row->comment_ID); echo '<li>' . str_replace($tags,$replacements,$template) . '</li>'; $echoed = 1;
}
if ($echoed==0)
echo '<li>No comment found.</li>';
?>
</ul>
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)