プログラミング

Twitter API 使い方 PHP クイックスタート

投稿日:2020年10月8日 更新日:

Twitter API (PHP) の、クイックスタート記事です。

前提条件

  • Twitterアカウントは所有済み
  • Xserverを利用
  • WordPress環境
  • 独自ドメイン設定済み
  • PHPからTwitter APIを利用する

もくじ

  • Twitterのアカウントで電話番号認証を行う
  • Twitter API のアカウントを手に入れる
  • API Key等を手に入れる
  • Xserver側で準備をする
  • Twitter APIを動かす

Twitterのアカウントで電話番号認証を行う

https://twitter.com/settings/account の「電話」の項目から、電話番号を登録しておいてください。

Twitter API のアカウントを手に入れる

2020年度版 Twitter API利用申請の例文からAPIキーの取得まで詳しく解説」を参照して、APIキーを入手してください。

私の場合は、必要情報を入力してすぐに申請許可のメールがTwitterから来ました。Twitterの利用実績を見られているような気がします。

API Key等を手に入れる

Twitter Developersに飛び、”Project & Apps” → (新規作成したアプリ) → “Keys and tokens” と推移してください。

“API Key & Secret”の項目の”View Keys”をクリックし、表示される“API key”“API key secret”をメモします。

“Access Token & Secret”という項目もあるはずなので、”Generate”をクリックし、“Access Token”“Access Secret”をメモします。

“Bearer Token”は、今回は使いません。

Xserver側で準備をする

TwitterのAPIは、接続の際に上記のKey等を利用して (面倒な) 認証をしないといけません。Xserverでも準備が必要です。

Xserverのサーバーパネルにアクセスして、SSH設定をクリックしてください。

「ONにする」をチェックし、「設定する」をクリックです。

「公開鍵認証用鍵ペアの生成」をクリック、適当なパスワード(これは後で使うのでメモしておいてください)を入力し、「確認画面へ進む」をクリックです。遷移後の画面で「生成する」をクリックしてください。

そうすると、”xxx.key”というファイルがダウンロードされるはずです。後で使うので、分かりやすいようにデスクトップに保存しておいてください。

今度は、サーバーパネルのサイドパネルから「パスワード情報」へ飛び、「サーバーID」をメモしてください。

サーバーパネルのサイドパネルから「サーバー情報」へ飛び、「ホスト名」をメモしてください。

Windows Keyを押して”cmd”と入力し、コマンドプロンプトを開いてください (Macを使用している方は、代わりにcmd+space keyから”Terminal”を開いてください)。

コマンドプロンプトに、下記コマンドを入力してください。

> ssh [サーバーID]@[ホスト名] -i [xxx.key] -p 10022
# 具体例は下記の通り
# > ssh takumablog@sv7777.xserver.jp -i ./Desktop/takumablog.key -p 10022
# macの場合は、上記sshコマンドの「前に」下記コマンドも入力
# > chmod 600 [xxx.key]

成功するとパスワードを求められるので、「公開鍵認証用鍵ペアの生成」ステップでメモしたパスワードを入力してください。ログイン後、下記のコマンドを入力します。

$ cd [独自ドメイン名]/public_html
# 具体例は下記の通り
# $ cd takumablog.com/public_html

そして、Twitter APIの認証をしてくれるソフトを入れます。下記コマンドを実行して、処理が終わるまで少しお待ち下さい。

$ composer require abraham/twitteroauth

処理が終了したら、下記コマンドでログアウトします。これで、Xserverの準備も完了です。

$ exit

Twitter APIを動かす

【WordPress】本文中に PHP を利用する方法に基づいて、PHPを書き込んでいきます。WordPressにログインして、「外観」→「テーマエディター」と進んでください。

「テーマのための関数」をクリックして、”<?php”の下の行に下記のプログラムを貼り付けます。

下記プログラム中のconsumerkey / consumersecret / accesstoken / accesstokensecretはダミーなので、「API Key等を手に入れる」ステップでメモしたものを入力してください(consumerkeyはAPI key、consumersecretはAPI key secretを利用してください)。

require_once($_SERVER['DOCUMENT_ROOT'] . "/vendor/autoload.php");
use Abraham\TwitterOAuth\TwitterOAuth;

function getToken($cons_key, $cons_secret, $oauth_token, $oauth_token_secret) {
  $connection = new TwitterOAuth($cons_key, $cons_secret, $oauth_token, $oauth_token_secret);
  return $connection;
}

function sc_php($atts = array()) {
    shortcode_atts(array( 
        'file' => 'default' 
    ), $atts); 
    ob_start(); 
    // ここからTwitter APIのプログラム ====
	$twitteruser = "manabubannai"; //ツイート取得対象ユーザー名(変更可)
	$notweets = 3; //取得ツイート数(変更可)
	$consumerkey = "iiSrsafSF(8SDDF7b";
	$consumersecret = "uhasdfSDLKJ98jhjdKSJHDF6sdf"; 
	$accesstoken = "123456789-hkshfKJHskjdhfsdf"; 
	$accesstokensecret = "plkLKSF9LKSJFdklkj(lksjdflkj"; 

	$connection = getToken($consumerkey, $consumersecret, $accesstoken, $accesstokensecret);

	$tweets = $connection->get("statuses/user_timeline", ["screen_name" => $twitteruser, "count" => $notweets]);
	
	echo $tweets[0]->text . "<br><br>";
	echo $tweets[1]->text . "<br><br>";
	echo $tweets[2]->text . "<br><br>";	
    // ここまでTwitter APIのプログラム ====
    return ob_get_clean();
}

add_shortcode('sc', 'sc_php');

その後、「ファイルを更新」してください。ここで間違えるとWordPressが動かなくなったりするので、(スペース/タブ等に)注意して、自己責任でお願いします。

(動かなくなった際には、先述のSSHでサーバーにリモートログインして、”/home/[サーバーID]/[独自ドメイン名]/public_html/wp/wp-content/themes/stinger8/functions.
php”を気合で修正してください)

ここまでで、準備は全て完了です。個別の記事に下記の”[ ]”で囲われた記述を入れ込むと、それがショートコードとして認識され、記事公開時にプログラムが実行されます。下記に画像の通りショートコードを入れているので、以下に@manabubannaiさんの最新ツイートが3つ表示されているはずです。

==== ここからショートコード/プログラムの実行結果 ====

@NeR_r6s_ なるほどです!そこも調査してみます!いつもコメントありがとうございます😌

@nft_chamo 無言のタイ人と話すのもありですかね😌w

とはいえ、ここまでの話は「僕の妄想」です。 こういった思考を持ちながら、ゲームしつつ、チャンスを探しています。焦っても仕方ないので、ブログで稼ぐのに4年かかったように、ゲームでも同じだと思っています。まずは楽しみつつ、継続しつつ、知識と経験値を増やします。終わり😌

==== ここまでショートコード/プログラムの実行結果 ====

お疲れ様でした。Twitter API クイックスタートはこれで終了です。もう少し違うことをしてみたい方は、Twitter API Documentationも参照してみてください。



-プログラミング
-, , ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です



関連記事

OANDA シストレ(oandapyV20) の始め方 【BOT編】

OANDA (oandapyV20)で、ゴールデンクロスで買い、デッドクロスで売るBOTを作ってみます。 下記の要素は、プログラム中で指定できるようにします。 単位期間 (年月日等)移動平均を取る期間 …

no image

OANDA シストレ(oandapyV20) の始め方 【関数編1】

OANDAで、シストレ/APIを利用する際にお世話になる関数の紹介です。情報は、基本的に公式ドキュメント (英語) から引っ張ってきています。 OANDA シストレ(oandapyV20) の始め方 …

no image

OANDA シストレ(oandapyV20) の始め方 【Pandas編】

OANDAで、シストレ/APIを利用する際にお世話になるPandasの紹介です。 OANDA シストレ(oandapyV20) の始め方 記事一覧 導入編関数編1関数編2関数編3Pandas編 ←本記 …

no image

OANDA シストレ(oandapyV20) の始め方 【関数編3】

OANDAで、シストレ/APIを利用する際にお世話になる関数の紹介です。 OANDA シストレ(oandapyV20) の始め方 記事一覧 導入編関数編1関数編2関数編3 ←本記事Pandas編(作成 …

no image

米国株の決算情報(過去分含む)を取得する【無料】

米国株の決算情報  (私ですと、ROEとかフリーキャッシュフローとか) が欲しいとき、ありますよね。 最新の決算情報ならまだしも、過去分も欲しいとなるとMorningstarやgurufoc …

プロフィール

タクマ
−−−−−−−−

東南アジア(ミャンマー&フィリピン)でNW系システムインテグレーターとして6年ほど駐在していました。本を1500冊以上読んだり、プログラミングをしたりしています。嫁さんはタイ人で、タイ在住です。
ーー
「〇〇を分かりやすく解説!」系のスカスカな記事を見ていると頭が悪くなりそうなので、対抗して、少し骨のある記事を書こうと考えています。
ーー
Twitter (@tkm_nkmr)
ーー
Twitterまとめのまとめ
YouTube Find!
SNS Trends

−−−−−−−−