【ワードプレス】はてなブックマークに投稿したブックマークをワードプレスにも投稿する方法。
はてなブックマーク設定の外部サイト連携でURLとキーを登録
最初にはてなブックマーク設定の外部サイト連携でイベント通知を受けとるURLとキーを登録して下さい。
イベント通知を受けとるURLは以下のように登録して下さい。
http://sample.com/wp-content/hatebu-web-hook.php
キーは自動生成して下さい。
Web HookからのHTTPリクエストを受け取るプログラムを用意
以下の場所にWeb Hookからのhttpリクエストを受け取るプログラムを用意して下さい。
/wp-content/hatebu-web-hook.php
require(dirname(dirname(__FILE__)) . '/wp-load.php');
// はてなブックマーク Web Hookのキーを設定
define("KEY", "WEB_HOOK_KEY");
if($_POST['key'] != KEY)
die("Authentication failed");
// ブックマーク追加かどうか判別
if($_POST['status'] != "add")
die("Add Status Only");
//http://developer.hatena.ne.jp/ja/documents/bookmark/apis/webhook
$params = array('username', 'title', 'url', 'count', 'permalink', 'status', 'comment', 'timestamp', 'is_private', 'key');
if(!array_diff($params, $_POST))
die('Invalid Parameters');
$_POST = array_map(function($value){
return htmlspecialchars($value, ENT_QUOTES, 'UTF-8');
}, $_POST);
$post["post_date"] = $_POST["timestamp"];
$post["post_date_gmt"] = $_POST["timestamp"];
$post["post_title"] = $_POST["title"];
$post["post_content"] = $_POST["comment"];
$post["post_status"] = "publish";
wp_insert_post($post);
以上です。
