php 实现我的足迹,Wordpress 实现“您的足迹”功能

今天手贱,又小小地折腾了一下 Wordpress,我也不知道该怎么描述这个功能,可能标题让你有点晕,我们还是先看效果吧。如果是之前留过言的访客,请看内页侧边栏,我新添加了一个“您的足迹”,可以看到,这里列出了留言访客的最近10条评论,当然,只能看到你自己的最近10条评论,原理就是调用记录在你浏览器中的 Cookies,如果你是第一次来访,或者刚刚清空了浏览器的缓存,那就看不到“您的足迹”这个板块了。

这其实就是一个最新评论功能的修改版,最新评论中指定隐藏管理员评论,而在“您的足迹”中正好是相对的,要指定显示某一个访客的评论,这里的访客就是指当前浏览器 Cookies 中记录的上一次评论者的信息。明白了原理,实现这个功能也就不难了,在最新评论代码的基础上,把 Cookies 中的访客信息作为变量传递给 comment_author 这个字段就可以了。

把以下代码复制到 Wordpress 主题文件中需要的地方,比如说 sidebar.php:

if($_COOKIE["comment_author_". COOKIEHASH]!=""){

global$wpdb;

$sql ="SELECT DISTINCT ID, post_title, post_password, comment_ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_author_email, comment_type, comment_author_url, SUBSTRING(comment_content,1,25) AS com_excerpt FROM$wpdb->commentsLEFT OUTER JOIN$wpdb->postsON ($wpdb->comments.comment_post_ID =$wpdb->posts.ID) WHERE comment_approved = '1' AND comment_type = '' AND comment_author = '".$_COOKIE["comment_author_". COOKIEHASH]."' AND post_password = '' ORDER BY comment_date_gmt DESC LIMIT 10";

$comments = $wpdb->get_results($sql);foreach($commentsas$comment) {

$output .="\n

ID)."#comment-".$comment->comment_ID."\"title=\"". $comment->post_title." 上的评论\">".strip_tags($comment->comment_author).": ".strip_tags($comment->com_excerpt) ."";

}

$output ='

您的足迹

  • '.$output.'
';

$output = convert_smilies($output);echo$output;

}

?>

因为我水平有限,就不一一解释以上代码的意思了,怕误导大家,另外样式表我也不提供了,每个主题的样式都各不相同,这个大家自由发挥吧。如果你嫌以上代码太累赘,可以把代码封装起来放在 Wordpress 主题的 functions.php 里,然后在需要的地方调用,这个扩展也不在本文讨论范围。

下面给第一次来访而看不到效果的朋友截了一张图。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值