WordPress提交评论时出现“正在提交,请稍候”如何解决?

近偶尔有用户反馈说他们的 WordPress 站点在评论的时候,点击提交评论后总是出现“正在提交,请稍候”,有时候等一分多钟,甚至有时候等上七八分钟才显示评论成功,但是在等待的过程中直接刷新浏览器,评论却正常显示。对于这个问题在本地测试的时候尤为严重,我在本地测试过很多次都是这样,但是在我的两个站点(懿古今和 boke112导航)却没有这个问题,真的很奇怪。

后来经过一番百度之后,终于找到相关的材料,据说造成这个问题的原因是因为 WordPress 自身的邮件发送问题导致(大概就是 sendmail 无法解析出 IP,sendmail 就一直尝试解析,导致 http 连接无法结束,一直到 sendmail 进程超时)。如果你正确配置好邮件发送,能够让站点正常收发邮件,那么这个问题一般都不会出现;或者是关闭 WordPress 后台的“发送电子邮件通知我”的功能,也不会出现这个问题。还有一种说法是因为主机名不完整所导致。既然知道原因,那么问题就好解决了,具体的解决办法如下:

方法一:设置完整的主机名(虚机的可忽略)

修改 /etc/sysconfig/network 文件,把

  1. hostname centos

改为

  1. hostname 自己的域名

方法来自Maro的博客

PS:老实说,对于这个方法我也不懂折腾,特别是我的本地环境是 WampServer,根本就无从下手,不过对于服务器比较熟悉的可以试试。

方法二:正确配置以使邮件正常发送(可选用)

现在很多 WordPress 主题都自带有 SMTP 邮件的设置功能(比如Nana主题的高级功能),这个时候我们就需要根据要求正确设置好相关选项,以使收件能够正常发送。如果主题没有自带有 SMTP 邮件功能的,可以安装 SMTP 插件来解决。

不过部分主机是没有开启 mail 函数的,所以就无法收发邮件,这个时候要么自己折腾或联系主机商帮忙开启 mail 函数,要不然只能望洋兴叹了。如果是阿里云的主机,不妨借鉴这篇文章看看《亲测万网免费主机Linux发送邮件教程》。

方法三:关闭“发送电子邮件通知我”功能(推荐)

登录 WordPress 后台 >> 设置 >> 讨论,然后找到“发送电子邮件通知我”,把“有人发表评论时”和“有评论等待审核时”前面的勾去掉即可。具体如下图所示:

取消这两个选项之后,有人发布评论或有评论需要审核时,WordPress 就不会发送邮件通知我们。如果正确设置邮件后,这项去不去都无所谓,如果未能正确收发邮件,勾选这两项也没用,所以还不如直接取消。个人比较推荐这种解决办法,毕竟简单实用,而且作为博主站长,哪个不是经常登录后台的?一登录后台就能看到新评论和有需要审核的评论了,具体如何取舍就看个人了。

 

在本网站主题中,一开始多处出现提交后网页无反应的情况,需要手动刷新,比如:提交评论后、用户注册出现系统内部错误、投稿提交后无反应、用户之间提交私信后页面无反应等等,在关闭了设置 - 讨论 中的 “发送电子邮件通知我”里的两个选项后,评论提交可以实现无刷新页面提交,但其他问题未解决,最后在正确设置SMTP后,所有提交问题均得到解决。

 

一些插件的Ajax提交问题

1.Contact Form 7 前台点击提交后一直在打转

最近几个WordPress项目都用到了Contact Form 7,鉴于Contact Form 7非常烦人的兼容性问题,已经有心理准备可能要来回调试很多,不过还是没料到问题的麻烦性,表单提交后,图标就一直在那里旋转,无法成功,经过查找多种解决方案,基本锁定在Contact Form 7的Ajax提交上,解决思路就是关闭Contact Form 7的Ajax提交。

通过安装一款 Contact Form 7 Controls 插件,可以对具体某个Contact Form 7表单进行关闭Ajax提交的操作:

关闭Ajax提交以后,一般提交卡在那里一直打转的问题就可以彻底解决了,Enjoy it!

一些WordPress问题解决思路:https://www.eastdesign.net/kb/wordpressdecontactform7wufatijiaobiaodanwentijiejuefangan/

本文由 小而美应用 作者:小而美应用 发表,其版权均为 小而美应用 所有,文章内容系作者个人观点,不代表 小而美应用 对观点赞同或支持。如需转载,请注明文章来源。

发表评论