电子邮件总是进入垃圾邮件文件夹

4
我正在尝试在电子邮件正文中发送Google登录链接,但它总是被标记为垃圾邮件。
我找到的唯一原因是accounts.google.com,即使google.com也不行。当我在开头加上account.时,它就会被标记为垃圾邮件,否则一切正常。
请见下方的链接和电子邮件正文。
$google_link='accounts.google.com/o/oauth2/auth?response_type=code&redirect_uri='.$site_url.'&client_id='.$client_id.'&scope=email+profile&access_type=online&approval_prompt=auto'; 

 $html.='<div>

         <a href="'.$google_link.'">Click here</a>

    </div>  
            ';

wp_mail( $email_address,subject, $html, $headers);

问题:有没有办法加密电子邮件正文中的URL,以便在电子邮件/ Gmail收件箱中正常工作?

是否有其他方法可以避免电子邮件进入垃圾邮件,例如使用任何第三方邮件发送工具标记特定主题的电子邮件?


取消垃圾邮件过滤。教你的垃圾邮件过滤器,如何识别非垃圾邮件。 - Justinas
你的URL不是绝对URL。在你的URL开头添加“https://”。同时,也提供一个仅包含文本mime的电子邮件版本。然后再使用完整的HTML标记。我不确定wp_mail是否会为您处理这个问题。 - lumio
@lumio 是的,我已经在使用文本 MIME 类型了 $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; ,而且URL是绝对的,上面的代码只是一个例子,我通过一些简单的逻辑动态地添加 https:// ,简言之,在发送电子邮件之前,URL变成了绝对路径。 - Esar-ul-haq Qasmi
那是一个HTML的MIME类型。我的意思是 text/plain - 应该表达得更清楚 :) - 也许 这篇文章(扩大受众并提高垃圾邮件分数:为什么多部分电子邮件很重要) 也会有所帮助。 - lumio
@lumio,我已经采纳了你的建议“text/plain”,但是它并没有起作用,邮件正文模板也因此失效了。 - Esar-ul-haq Qasmi
1个回答

0

您可以通过注册并安装他们的WordPress插件来使用第三方服务SendGrid。 SendGrid会处理您的电子邮件文本,并将链接替换为指向SendGrid的链接,以便在电子邮件中不会出现accounts.google.com。当用户点击链接时,SendGrid将记录点击并重定向到您的原始URL。

或者,您可以创建自己的重定向URL。最安全的方法是拥有一个表来存储URL并生成唯一的令牌,以便您可以在电子邮件中放置自己的链接和令牌。当您的脚本被访问时,从与令牌匹配的表中提取目标URL并重定向到它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接