web-dev-qa-db-ja.com

トラックバックまたはピングバックを使用してサイトに送受信されるデータは何ですか?

トラックバックとpingbackを有効にすると、正確にデータがWordpressのブログに送信されます。このデータをキャプチャできますか?

Wordpressのブログの紹介記事には、URL以外にももっと多くのデータが送信されていると書かれていますが、正確には-what -...で、どうすればそれを制御できますか?すなわち。抜粋記事が送信されますか。リンクしているブログからのコメントは受け取られていますか(もしそうであれば、どうやってそれらをキャプチャしますか?)

このブログ記事では、一方はHTTPともう一方はXML-RPCを使用していると言っているので、両方のタイプのデータを取り込むための単一のメカニズムがあるのだろうかと思います。

4
jchwebdev

Pingbackの場合、リンク先のページ/投稿とそれがリンクしているページ/投稿のみが送信されるようです。 pingback() 関数、特に次の行をチェックしてください。

 $client->query( 'pingback.ping', $pagelinkedfrom, $pagelinkedto );

... $clientWP_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()

$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 );

応答の処理/傍受に関しては、pingの場合はwp-includes/class-wp-xmlrpc-server.phpwp_xmlrpc_server::pingback_ping()のソース、トラックバックの場合はwp-trackback.phpファイルを調べてください。

あなたはすぐにあなたが利用可能なアクション/フィルタ、そしてあなたがどのくらい反応と反応(&変更)できるかを見るでしょう。

3
TheDeadMedic