概ね、タイトルとおりの内容です。
WordPressで作成した特定のカテゴリの記事を、定期的にTwitterでリンクと一緒につぶやく。
みたいなサンプルプログラムを作ってみます。
Twitter APIを使い特定のアカウントからつぶやきをする方法は、↓こちら↓の記事を参照して下さい。今回は省略します。
- 【Twitter API】PEARのServices_Twitterを使ってフォロワーを取得、つぶやき、リムーブなどをしてみる(1)
- 【Twitter API】PEARのServices_Twitterを使ってフォロワーを取得、つぶやき、リムーブなどをしてみる(2)
これでつぶやきは行うことができます、次はつぶやきに必要な情報を取得する方法ですね。
WordPress内の記事の一覧を取得する
WordPress記事を取得する場合は、、まずWordPressがインストールされたディレクトリ直下にあるwp-load.phpをインクルードします。
それから記事取得に使うget_posts関数を使います。
get_posts関数の引数にはカテゴリと取得する記事数を指定します。
//WordPressの関数を使えるようにする
require_once('.././wp-load.php');
//カテゴリーIDが7の記事を10件取得
$posts = get_posts( array( 'category'=>7, 'numberposts' =>10 ) );
これでカテゴリーIDが7の記事を10件取得できました。
ランダムに1件選択してリンクとタイトルを取得する
取得した記事一覧にからランダムに1件抽出してから、
get_permalink関数
を使ってパーマリンクとタイトルを取得します。
//WordPressの関数を使えるようにする
require_once('.././wp-load.php');
//カテゴリーIDが7の記事を10件取得
$posts = get_posts( array( 'category'=>7, 'numberposts' =>10 ) );
//10件の中からランダムに1件取得
$rnd = mt_rand(0, 9);
$post = $posts[$rnd];
// パーマリンクと記事のタイトルを取得する
$post_link = get_permalink($post->ID);
$post_title = $post->post_title;
あとはこれらの内容をつぶやくだけですね。
サンプルプログラム
//WordPressの関数を使えるようにする
require_once('.././wp-load.php');
//カテゴリーIDが7の記事を10件取得
$posts = get_posts( array( 'category'=>7, 'numberposts' =>10 ) );
//10件の中からランダムに1件取得
$rnd = mt_rand(0, 9);
$post = $posts[$rnd];
// リンクと記事のタイトルを取得する
$post_link = get_permalink($post->ID);
$post_title = $post->post_title;
//つぶやく内容を作成
$text = "「" . $post_title . "」 " . $post_link ;
//Twitter API
require_once 'Services/Twitter.php';
require_once 'HTTP/OAuth/Consumer.php';
$consumerkey = "【設定した値】";
$consumersecret = "【設定した値】";
$accesstoken = "【設定した値】";
$accessecret = "【設定した値】";
$twitter = new Services_Twitter();
$oauth = new HTTP_OAuth_Consumer($consumerkey, $consumersecret, $accesstoken, $accessecret);
$twitter->setOAuth($oauth);
//つぶやく
$msg = $twitter->statuses->update( $text );
【実行結果】

特定のカテゴリに興味ある人をフォローしたアカウントを用意して、
このプログラムで定期的につぶやけばアクセスアップに繋がる…といいですね(^ω^)
