composerでTwitterのoauthライブラリを利用しタイムラインを取得する

Twitter APIを使って、あれこれ条件を指定してタイムラインを取得するためには、いくつかの準備が必要です。

  1. TwitterのDeveloper Accountを登録する
  2. アプリを作成してAPIキーを取得する
  3. サーバーにcomposerをインストールする
  4. 「abraham/twitteroauth」ライブラリを導入する
  5. APIキーとoauthライブラリを使ってタイムラインを取得するphpコードを作成する
  6. WordPressで、そのphpコードを表示できるようにする
1.TwitterのDeveloper Accountを登録する

TwitterのDeveloper account登録をしてみる」を参照のこと。

2.アプリを作成してAPIキーを取得する

こちらのページなどを参考に、アプリケーションを作成します。英文で申請しなければならない(短文ですが)ので、例文も参考にしてください。

私の場合、アプリを使ってログインしたりTwitterに投稿したり、ということはせず、あくまでタイムラインを取得するだけなので、アプリケーションのAccess permissionは「Read-only」にしました。

アプリ作成後に「Keys and tokens」タブをクリックすると、Consumer API keys (Consumer Key & Consumer Secret)とAccess token & access token secretが取得できます。

3.サーバーにcomposerをインストールする

さくらサーバーにcomposerをインストールするには、こちらを参考にしました。

4.Oauthライブラリの導入

サーバーにSSH接続して、ライブラリをインストールしたいディレクトリに移動したあと、以下のコマンドを実行します。composerをインストールしたディレクトリと異なる場合には、「/home/アカウント/composer.phar」みたいにcomposerまでのパスを書いてやればいいと思います。

php composer.phar require abraham/twitteroauth
5.phpコードの作成

以下のようなコードを作成してみます。

<?php
// TwitterOAuthライブラリを読み込み
require 'vendor/autoload.php';
// TwitterOAuthクラスをインポート
use Abraham\TwitterOAuth\TwitterOAuth;

//Developer Accountで作成したアプリのAPIキーを代入
$consumer_key = '***************'; 
$consumer_secret = '***************';
$access_token = '***************';
$access_token_secret = '***************';

// TwitterOAuthクラスのインスタンスを作成
$connection = new TwitterOAuth( $consumer_key, $consumer_secret, $access_token, $access_token_secret ); 

// ユーザータイムラインを取得するためのオプション
$options = [
  'screen_name'=>'**********', //表示させるユーザーアカウント
  'count'=>'15', //取得するtweetの数
  'exclude_replies'=>'true', //リプライを除外する
  'include_entities'=>'true', //画像のurl等を含める
];

$tweets = $connection -> get('statuses/user_timeline',$options);

?>

これで、指定したユーザーのタイムラインの情報が取れます。foreachで回して、表示したい情報を取り出していけばOKです。

<?php foreach($tweets as $value): 

  $prof_image = $value -> user -> profile_image_url_https;// プロフィール画像のURL
  $createdAt = 	$value -> created_at;// 投稿時刻
  $media_url = 	$value -> entities-> media[0] -> media_url_https; // 添付画像のURL
  $user_id = 	$value -> user -> screen_name; 
  $text =       $value -> text; // 投稿本文($tweet_mode=expandedにしている場合はfull_text)
?> 

//ここに表示させたい内容を書いていく

<?php endforeach;?>

実際の作成例はこちらです。


2021-10-12 18:46
ハーモニー最新号の表2(表紙裏)と11ページにて、好評開催中のパナムジカ35周年記念プロジェクトについて掲載していただいています! 皆様是非ご覧ください😉 https://t.co/QfUoDbihqs
2021-10-08 18:56
【コンクール情報更新】 10月30日、31日に開催されます第74回全日本合唱コンクール全国大会(中学校・高等学校部門)の出場団体、及び演奏曲情報をご紹介しています。 https://t.co/5fYUNbt4RE コンクール詳細… https://t.co/wDRnc4tqhX
2021-10-08 18:48
新刊案内ページにて、アメリカの作曲家スティーブン・ポーラスの合唱音楽5作品をご紹介中! メロディアスでロマンティックな彼の作風にハマる方もきっと多いのではないかと思います😍 YouTubeに演奏音源もございますので、是非楽譜購入の… https://t.co/TOFVUzf1Qv
2021-10-08 18:10
【Concert Information】明後日開催‼️ 合唱団お江戸コラリアーず 第20回演奏会 日程 10月10日(日) 15:00開演 会場 ウェスタ川越大ホール(埼玉) 演奏曲 三宅悠太:祈りの海(委嘱初演)、多田武彦:吹… https://t.co/IgS5EfBe3l
2021-10-07 19:13
RT @27salon: 合唱の方話題になってしまいますが m(*- -*)m パナムジカ35周年記念という事で今日一筆箋を頂きました🎇💕 感謝🙏 パナムジカ様35周年おめでとうございます🎉🎉🎉 #35周年 #可愛い一筆箋 ピアノの本も品揃え豊富です 最新の合唱本・合唱…
2021-10-07 18:05
【Concert Information】明後日開催‼️ 東京ユースクワイア第2回演奏会 日程 10月9日(土) 13:30開演 会場 板橋区立文化会館(東京) 出演団体 Voces Fidelis / Voces Veritas… https://t.co/ZOUDSNnwae
2021-10-07 18:03
【新刊やで!】 カワイ出版より、“大阪”にまつわる名曲たちを繋いだメドレー「合唱祭はこの一冊で!合唱で大阪!!知らんけど」が入荷しました。 大阪LOVE💖な皆さん!明るく元気に歌って、会場を盛り上げてください! 混声:… https://t.co/C466T0HIF3
2021-10-01 18:59
ラトビアン・ヴォイスのリーダーを務めるラウラ・ジェイカブソンがエストニアの民謡をアレンジした「Ilus Haal (Beautiful Voice)」、フィンランドの作曲家シベリウスの混声合唱作品もHPにてご紹介しています♪… https://t.co/qLUI85af9X
2021-10-01 18:50
パンデミックによって生み出された孤立や分断に対して、人々に少しでも安らぎを与え、他者に対して思いやりや優しさを持った生き方を示唆するものになることを願い、エリック・ウィテカーが作詞・作曲した作品「Sing Gently」。 混声・… https://t.co/m1GagrxkE5
2021-10-01 18:13
RT @BreitkopfMusic: 【パナムジカ35周年記念オンラインセミナー】 パナムジカさん主催のオンラインセミナーで、弊社社長が弊社の歴史とブラームス《ドイツ・レクイエム》原典版の魅力をたっぷりとご紹介します!2021年11月10日(水)19時より、日本中の皆様のご参…
2021-10-01 18:08
【Concert Information】明後日開催‼️ 大阪ハインリッヒ・シュッツ室内合唱団 京都公演 [邦人合唱曲シリーズVol.26] 日程 10月3日(日) 15:00開演 会場 京都府立府民ホール アルティ(京都) 演奏… https://t.co/CP1md4qqtA
2021-10-01 18:06
【Concert Information】明後日開催‼️ コーロ・ブリランテ 40周年演奏会 日程 10月3日(日) 14:00開演 会場 りゅーとぴあ新潟市民芸術文化会館 コンサートホール(新潟) https://t.co/JMsSfP7bSx
2021-10-01 18:04
【Concert Information】明日開催‼️ 女声合唱団コール・ブリランテ 25周年記念演奏会 日程 10月2日(土) 14:00開演 会場 住友生命いずみホール(大阪) 演奏曲 サラソラ合唱作品集、次郎丸智希:あふさか… https://t.co/a1mxvQiZRd
2021-09-28 12:13
RT @studio_811: 先日のドラフト演奏会でも演奏した「universe」と「ブルーシャトゥ」の楽譜が発売されました‼️
2021-09-27 18:19
先日のご案内後、多数の新刊ご予約をいただきまして誠にありがとうございます♪ 創業35周年記念企画として現在プレゼント中の大好評“オリジナル一筆箋”ですが、もちろん期間内【3,500円以上のご予約】でもお付けしております‼️ この機… https://t.co/y3K6tEHr1i

さまざまなオプションや取り出せるデータはこちらを参照してください。