SOHO创业

实现wordpress一篇文章只允许同一IP评论一次

在使用wordpress建站时,常常遇到被垃圾留言困扰,有些通过机器发垃圾留言,一发就是成百上千条,这个很烦人,因此,有些人干脆直接在wordpress网站上把留言评论功能给关闭了。

如果你的wordpress主题必须要使用留言评论,有一个办法可以规避这个问题,即实现wordpress一篇文章只鸡同一IP的人评论一次就可以。

将以下代码添加到functions.php中

// 一篇文章只允许同一IP评论一次
//获取评论用户的ip,参考wp-includes/comment.php
function wdp_getIP() {
  $ip = $_SERVER['REMOTE_ADDR'];
  $ip = preg_replace( '/[^0-9a-fA-F:., ]/', '', $ip );
    
  return $ip;
}
function wdp_only_one_comment( $commentdata ) {
  global $wpdb;
  $currentUser = wp_get_current_user();
  
  // 不限制管理员发表评论
  if(empty($currentUser->roles) || !in_array('administrator', $currentUser->roles)) {
    $bool = $wpdb->get_var("SELECT comment_ID FROM $wpdb->comments WHERE comment_post_ID = ".$commentdata['comment_post_ID']."  AND (comment_author = '".$commentdata['comment_author']."' OR comment_author_email = '".$commentdata['comment_author_email']."' OR comment_author_IP = '".wdp_getIP()."') LIMIT 0, 1;");
    if($bool)
      wp_die('留言已提交,请勿重复留言。<a href="'.get_permalink($commentdata['comment_post_ID']).'">点此返回</a>');
  }

  return $commentdata;
}
add_action( 'preprocess_comment' , 'wdp_only_one_comment', 20);
Published
Categorized as 建站知识 Tagged

By SOHO

wowsoho.com是一个关注跨境电商、创业话题的网站。

B2B独立站与B2C独立站的区别是什么 哪个更好

B2B独立站更适合需要建立长期合作关系、强调专业性和信任感的企业,而B2C独立站更适合直接面向消费者、注重品牌形象和消费者体验的企业。

跨境电商独立站运营的难点和要点

跨境电商独立站运营的难点和要点,充分了解并掌握了这些,你的跨境电商运营之路将会走的更顺畅。

WordPress外贸建站课零基础也能轻松入门秘诀

  在数字化时代,拥有一门WordPress建站技能是在外贸领域站稳脚跟的关键之一。对于零基础的学员而言,选择… Continue reading WordPress外贸建站课零基础也能轻松入门秘诀

wordpress按栏目别名调用最新内容

可实现按栏目别名调用该栏目下的最新内容

模板之家mymoban提供的模板是否支持多语言版本

模板之家(MyMoban.com)作为一个提供网站模板的平台,可能会提供支持多语言的模板,以适应不同用户的国际… Continue reading 模板之家mymoban提供的模板是否支持多语言版本

WordPress外贸建站平台在行业的领先地位

  WordPress外贸建站平台一直以其卓越的灵活性、丰富的功能和用户友好的界面而在全球范围内备受青睐。本文… Continue reading WordPress外贸建站平台在行业的领先地位