Service/Akismet.php
Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled
with this package in the file LICENSE.txt.
It is also available through the world-wide-web at this URL:
http://framework.zend.com/license/new-bsd
If you did not receive a copy of the license and are unable to
obtain it through the world-wide-web, please send an email
to license@zend.com so we can send you a copy immediately.
- Category
- Zend
- Copyright
- Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Service
- Subpackage
- Akismet
- Version
- $Id$
\Zend_Service_Akismet
Package: Zend_Service\Akismet
Returns
Throws
Returns
Throws
Throws
Akismet REST service implementation
- Parent(s)
- \Zend_Service_Abstract
- Category
- Zend
- Copyright
- Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Uses
Properties
Methods
__construct(string $apiKey, string $blog) : void
Constructor
Parameters
Name | Type | Description |
---|---|---|
$apiKey | string | Akismet API key |
$blog | string | Blog URL |
_makeApiCall(string $path, array $params) : \Zend_Http_Response
Perform an API call
Parameters
Returns
Throws
Name | Type | Description |
---|---|---|
$path | string | |
$params | array |
Type | Description |
---|---|
\Zend_Http_Response |
Exception | Description |
---|---|
\Zend_Service_Exception | if missing user_ip or user_agent fields |
_post(string $host, string $path, array $params) : mixed
Post a request
Parameters
Returns
Name | Type | Description |
---|---|---|
$host | string | |
$path | string | |
$params | array |
Type | Description |
---|---|
mixed |
isSpam(array $params) : boolean
Check a comment for spam
Checks a comment to see if it is spam. $params should be an associative
array with one or more of the following keys (unless noted, all keys are
optional):
- blog: URL of the blog. If not provided, uses value returned by {@link getBlogUrl()}
- user_ip (required): IP address of comment submitter
- user_agent (required): User Agent used by comment submitter
- referrer: contents of HTTP_REFERER header
- permalink: location of the entry to which the comment was submitted
- comment_type: typically, one of 'blank', 'comment', 'trackback', or 'pingback', but may be any value
- comment_author: name submitted with the content
- comment_author_email: email submitted with the content
- comment_author_url: URL submitted with the content
- comment_content: actual content
Additionally, Akismet suggests returning the key/value pairs in the
$_SERVER array, and these may be included in the $params.
This method implements the Akismet comment-check REST method.
ParametersName | Type | Description |
---|---|---|
$params | array |
Type | Description |
---|---|
boolean |
Exception | Description |
---|---|
\Zend_Service_Exception | with invalid API key |
setApiKey(string $apiKey) : \Zend_Service_Akismet
Set API key
Parameters
Returns
Name | Type | Description |
---|---|---|
$apiKey | string |
Type | Description |
---|---|
\Zend_Service_Akismet |
setBlogUrl(string $blogUrl) : \Zend_Service_Akismet
Set blog URL
Parameters
Returns
Throws
Name | Type | Description |
---|---|---|
$blogUrl | string |
Type | Description |
---|---|
\Zend_Service_Akismet |
Exception | Description |
---|---|
\Zend_Service_Exception | if invalid URL provided |
setCharset(string $charset) : \Zend_Service_Akismet
Set charset
Parameters
Returns
Name | Type | Description |
---|---|---|
$charset | string |
Type | Description |
---|---|
\Zend_Service_Akismet |
setPort(int $port) : \Zend_Service_Akismet
Set TCP/IP port
Parameters
Returns
Throws
Name | Type | Description |
---|---|---|
$port | int |
Type | Description |
---|---|
\Zend_Service_Akismet |
Exception | Description |
---|---|
\Zend_Service_Exception | if non-integer value provided |
setUserAgent(string $userAgent) : \Zend_Service_Akismet
Set User Agent
Should be of form "Some user agent/version | Akismet/version"
ParametersName | Type | Description |
---|---|---|
$userAgent | string |
Type | Description |
---|---|
\Zend_Service_Akismet |
Exception | Description |
---|---|
\Zend_Service_Exception | with invalid user agent string |
submitHam(array $params) : void
Submit ham
Takes the same arguments as {@link isSpam()}.
Submits a comment that has been falsely categorized as spam by Akismet
as a false positive, telling Akismet's filters not to filter such
comments as spam in the future.
Unlike {@link submitSpam()} and {@link isSpam()}, a valid API key is
never necessary; as a result, this method never throws an exception
(unless an exception happens with the HTTP client layer).
this method implements Akismet's submit-ham REST method.
ParametersName | Type | Description |
---|---|---|
$params | array |
submitSpam(array $params) : void
Submit spam
Takes the same arguments as {@link isSpam()}.
Submits known spam content to Akismet to help train it.
This method implements Akismet's submit-spam REST method.
ParametersName | Type | Description |
---|---|---|
$params | array |
Exception | Description |
---|---|
\Zend_Service_Exception | with invalid API key |