今回はPHPでTwitterOAuthを使ってツイートを投稿する方法をメモしておこうと思います。
仕組みは非常にシンプルですが、これが出来ればbotの自作なんかが出来るようになります。
用意するもの
まず当然Twitterアカウントが必要です。
そしてOAuth認証のために公式の開発者用ページからアプリを作成し、4つの認証情報(consumerKey、consumerSecret、accessToken、accessTokenSecret)を生成します。この情報はローカルにメモしておきましょう。
次にOAuth認証を行ってくれるSDK「twitteroauth」をGithubからダウンロードします。
このSDKの詳しい情報はこちらの公式ページに書いてあります(英語ですが)。
基本的な使い方
まずPHPを使用するためにMAMPなどでサーバーを立ちあげて環境を整えましょう。
そしてダウンロードしたtwitteroauthを使用したいサイトのフォルダ内に置きます。
(ちなみにtwitteroauthの中にはプログラムに関係ないファイルも入っているのでそこは後で消しておきましょう)
そして同じサーバーにツ下記のようなコードのツイート投稿用PHPを配置します。
$text="ツイートの投稿テストです。"; // OAuthライブラリを読み込む require "twitteroauth/autoload.php"; use Abraham\TwitterOAuth\TwitterOAuth; //個別の認証情報 $consumerKey = "生成した認証情報を入れてください"; $consumerSecret = "生成した認証情報を入れてください"; $accessToken = "生成した認証情報を入れてください"; $accessTokenSecret = "生成した認証情報を入れてください"; //接続 $connection = new TwitterOAuth($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret); //投稿 $res = $connection->post("statuses/update", array("status" => $text));
このPHPファイルに直接アクセスすれば$textの内容が、アプリを作ったアカウントで投稿されているはずです。
ただ実際に使う際には直接アクセスすることはほぼ無いと思うので、そこはajaxなどを使ってUIを作っていくことになるでしょう。
思ったよりも簡単に投稿機能が実装できました。
この機能をどう使うかは、自分のやりたいこと次第です。
cronに登録して定期的につぶやくbotを作るか、それとも何かしらのコンテンツに投稿機能を実装するか…
なんにせよ夢が膨らみますね!