傻大憨

实现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 傻大憨

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

一个数据库中安装多个wordpress网站的方法

如果你在建站时,需要在一个数据库中安装多个wordpress网站,只要不与已经建立的数据表前缀一样就可以。

wordpress建站公司如何选择

选择一家合适的WordPress建站公司需要考虑多个方面,包括公司的背景和实力、需求和预算、技术实力和服务质量、设计师和开发人员的经验、合同和项目细节、网站的安全性和稳定性以及未来的扩展性和升级性等。

用wordpress搭建海外旅游网站的优势

用WordPress搭建海外旅游网站的优势分析用WordPress搭建海外旅游网站具有许多优势,包括灵活性、易用性、SEO优化、安全性、集成支付系统、用户评论和社交分享、兼容移动设备、日历和预订功能以及社区和用户互动等。

WordPress网站做海推广需要注意的事项

用WordPress搭建的网站才是真正属于企业自己的网站,重要数据都是掌握在企业手中,网站是否可以正常使用不受制于他人,大大降低数据存储和维护的风险。

为什么我不用Elementor

Elementor

给wordpress添加带区块编辑器的文章类型

给wordpress添加带区块编辑器的自定义文章类型