概ね、タイトルとおりの内容です。
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 );
【実行結果】
特定のカテゴリに興味ある人をフォローしたアカウントを用意して、
このプログラムで定期的につぶやけばアクセスアップに繋がる…といいですね(^ω^)