antoniotajuelo / akismet-php
使用Akismet阻止垃圾邮件进入您的网站评论或内容。
Requires
- php: >=5.3.0
- guzzlehttp/guzzle: >=6.2.0
This package is not auto-updated.
Last update: 2023-08-14 09:18:20 UTC
README
使用Akismet阻止垃圾邮件进入您的网站评论或内容。
入门指南
首先,从这里获取您的Akismet密钥(如果您还没有):https://akismet.com/
然后使用Composer安装包,并将此行添加到您的require
语句中。
"antoniotajuelo/akismet-php": "0.0.1"
最后在终端运行
sudo composer update
代码示例
use AntonioTajuelo\Akismet\Akismet; $akismet = new Akismet('YOUR-AKISMET-KEY','YOUR-WEBSITE-URL'); // Check if the Akismet key is valid $isValidKey = $akismet->verifyKey(); var_dump($isValidKey); // Check if a comment is spam $params = [ 'is_test' => 1, 'user_ip' => '123.123.123.123', 'user_agent' => 'blablabla', 'comment_author' => 'viagra-test-123', 'coment_content' => 'Hello. This is a spam message. Cheap viagra. Sale.' ]; $isSpamComment = $akismet->commentCheck($params); var_dump($isSpamComment);
可用方法
verifyKey()
检查您的密钥是否有效。不接收任何参数。
commentCheck()
这是您将最常调用的方法。它接受关于提交内容的多个参数和特征,然后返回赞成或反对。如果您选择排除数据点,性能可能会大幅下降。您发送给Akismet的每个评论的数据越多,准确性就越高。我们建议尽量包含更多的数据。
此方法接受一个参数数组,包含以下任意数量的键。
参数 | 必需 | 描述 --- | --- | --- | --- user_ip
| 是 | 评论提交者的IP地址。 user_agent
| 是 | 提交评论的网页浏览器的用户代理字符串 - 通常为 HTTP_USER_AGENT
cgi变量。请勿与Akismet库的用户代理混淆。 referrer
(注意拼写)| - | 应将HTTP_REFERER
头的内容发送到这里。 permalink
| - | 提交评论的条目的永久位置。 comment_type
| - | 可能是空白、评论、引用、pingback,或自定义值如“registration”。 comment_author
| - | 与评论一起提交的名称。 comment_author_email
| - | 与评论一起提交的电子邮件地址。 comment_author_url
| - | 与评论一起提交的URL。 comment_content
| - | 提交的内容。 comment_date_gmt
| - | 评论创建的UTC时间戳,以ISO 8601格式。如果评论是在创建时通过API发送的,则可以省略。 comment_post_modified_gmt
| - | 提交评论的帖子、页面或线程的发布时间的UTC时间戳。 blog_lang
| - | 指示博客或网站使用的语言(用ISO 639-1格式表示,以逗号分隔)。一个包含英文和法文文章的网站可能使用“en, fr_ca”。 blog_charset
| - | 包含在comment_*参数中的表单值的字符编码,如UTF-8
或ISO-8859-1
。 user_role
| - | 提交评论的用户角色。这是一个可选参数。如果您将其设置为“administrator”,Akismet将始终返回false。 is_test
| - | 这是一个可选参数。当向Akismet提交测试查询时,可以使用它。
submitSpam()
这个调用用于提交那些没有被标记为垃圾邮件但本应被标记的评论。
确保您使用此调用提交的值与您的评论检查调用尽可能匹配非常重要。为了从错误中学习,Akismet需要将您错过垃圾邮件和误报的报告与内容首次发布时进行的原始评论检查API调用相匹配。虽然对于submit-spam和submit-ham调用来说,通常可用的信息较少(大多数评论系统和论坛不会存储所有元数据),但您应该确保您发送的值与原始内容匹配。
此方法接受一个参数数组,包含以下任意数量的键。
参数 | 必需 | 描述 --- | --- | --- | --- user_ip
| 是 | 评论提交者的IP地址。 user_agent
| 是 | 提交评论的网页浏览器的用户代理字符串 - 通常为 HTTP_USER_AGENT
cgi变量。请勿与Akismet库的用户代理混淆。 referrer
(注意拼写)| - | 应将HTTP_REFERER
头的内容发送到这里。 permalink
| - | 提交评论的条目的永久位置。 comment_type
| - | 可能是空白、评论、引用、pingback,或自定义值如“registration”。 comment_author
| - | 与评论一起提交的名称。 comment_author_email
| - | 与评论一起提交的电子邮件地址。 comment_author_url
| - | 与评论一起提交的URL。 comment_content
| - | 提交的内容。
submitHam()
这个调用旨在提交误报 - Akismet错误地将项目分类为垃圾邮件的条目。它接受与评论检查和提交垃圾邮件相同的参数。
请记住,如我们在提交垃圾邮件文档中解释的那样,您应确保在这里传递的任何值与原始的对应评论检查调用相匹配。
此方法接受一个参数数组,包含以下任意数量的键。
参数 | 必需 | 描述 --- | --- | --- | --- user_ip
| 是 | 评论提交者的IP地址。 user_agent
| 是 | 提交评论的网页浏览器的用户代理字符串 - 通常为 HTTP_USER_AGENT
cgi变量。请勿与Akismet库的用户代理混淆。 referrer
(注意拼写)| - | 应将HTTP_REFERER
头的内容发送到这里。 permalink
| - | 提交评论的条目的永久位置。 comment_type
| - | 可能是空白、评论、引用、pingback,或自定义值如“registration”。 comment_author
| - | 与评论一起提交的名称。 comment_author_email
| - | 与评论一起提交的电子邮件地址。 comment_author_url
| - | 与评论一起提交的URL。 comment_content
| - | 提交的内容。
附加文档
Akismet API 文档:https://akismet.com/development/api/#detailed-docs
创作者
Antonio Tajuelo