启用trackback和pingback时,wordpress博客发送/发送的数据究竟是什么?我可以捕获这些数据吗?
Wordpress上的博客帖子介绍说,除了URL之外,正在发送更多的数据,但准确地说,是什么。。。我怎样才能控制它?也就是说,邮件摘录是否正在发送?是否收到链接博客的评论(如果收到,我如何获取它们?)
那篇博文说,一个使用HTTP,另一个使用XML-RPC,所以我想知道是否有一种机制可以捕获这两种类型的数据。
启用trackback和pingback时,wordpress博客发送/发送的数据究竟是什么?我可以捕获这些数据吗?
Wordpress上的博客帖子介绍说,除了URL之外,正在发送更多的数据,但准确地说,是什么。。。我怎样才能控制它?也就是说,邮件摘录是否正在发送?是否收到链接博客的评论(如果收到,我如何获取它们?)
那篇博文说,一个使用HTTP,另一个使用XML-RPC,所以我想知道是否有一种机制可以捕获这两种类型的数据。
对于pingback,似乎只发送链接的页面/帖子及其链接来源的页面/帖子。查看pingback()
功能,特别是这一行:
$client->query( \'pingback.ping\', $pagelinkedfrom, $pagelinkedto );
。。。哪里$client
是的实例WP_HTTP_IXR_Client
. 这个query
方法使用IXR_Request
要打包简单的XML文档,请执行以下操作:<?xml version="1.0"?>
<methodCall>
<methodName>pingback.ping</methodName>
<params>
<param>
<value>
<string>[pagelinkedfrom]</string>
</value>
</param>
<param>
<value>
<string>[pagelinkedto]</string>
</value>
</param>
</params>
</methodCall>
。。。然后发送到pingback服务器URL(在$client
已实例化)。trackback,更简单一点,包含更多数据-请参阅trackback()
:
$options[\'body\'] = array(
\'title\' => $title,
\'url\' => get_permalink($ID),
\'blog_name\' => get_option(\'blogname\'),
\'excerpt\' => $excerpt
);
// WP_Http will automatically convert body to a HTTP query string
$response = wp_safe_remote_post( $trackback_url, $options );
至于处理/拦截响应,请查看wp_xmlrpc_server::pingback_ping()
在里面wp-includes/class-wp-xmlrpc-server.php
对于ping和文件wp-trackback.php
用于trackback。您将很快看到可用的操作/过滤器,以及可以与响应交互(更改)的程度。
关于新wp安装(3.0.4)中PBs的功能测试,我有几个问题:发布帖子时是立即发送pingback,还是将其安排为cron作业?如果后者正确,作业多久运行一次,我可以手动触发它吗?除了将“尝试通知文章中链接到的任何博客”设置为“开”,当然还有帖子内容中指向另一个博客的链接之外,还有其他关于发送PBs的术语吗?(例如,发件人的帖子应该是公开的而不是私有的吗?博客应该是非私有的吗?)出站链接应该放在帖子内容中,还是可以放在帖子的自定义字段中,以便发送PB?如果我的博客中没有发送或接收PBs,那么调试和检测问题