pw_twitter – WordPress用Twitterプラグイン

pw_twitter – WordPress用Twitterプラグイン pw_twitter
2013/09/02 – ver2.1
ページ作成時のつぶやきカスタムボックスが消えていたので修正
2013/09/02 – ver2.0
投稿時つぶやきにエントリ内の最初のimgを添付できるように修正。それにともなってOAuthライブラリをtwitteroauthからtmhOAuthに変更
2013/07/25 – ver1.0
リリース

pw_twitterとは

Twitterに関する機能を提供するWordPressプラグインです。

以下のような機能があります

  • カスタマイズ可能なつぶやきの表示
  • ツイッターアイコンの表示とキャッシュ
  • 投稿時をトリガーとした柔軟なツイート機能

事前の準備

プラグインを使用する前に以下のものが必要です。

  • pwシリーズ共通ライブラリlibpw
  • PEAR/Cache_Lite
  • Twitterのアカウント
  • Twitterアプリケーションの登録

PEAR/Cache_LiteはTwitterのAPI制限を回避するためのツイートのキャッシュに使用しています。memcachedなどを使用したい場合はソースを修正してください。

Twitterのアカウント

コレが無ければこのプラグインには何の意味もありません。お持ちで無い場合はこちらから取得できます。

Twitterアプリケーションの登録

ツイート情報やアイコンの取得、エントリ投稿時のツイートに使用します。

取得の方法ですがTwitterでアプリケーション登録というものを行います。

img01

https://dev.twitter.com/appsにアクセスして「Create a new application」をクリック

アプリの登録画面に移るので必要な情報を入力します

アプリケーションのアイコン

アプリケーションのアイコンです。つぶやきに表示されるものではありません

アプリケーション名

アプリケーションの名前です。タイムラインのつぶやき下部に表示される~からのところに入ります。ブログ名などが良いかと思います。すでに使われている名前は使えません。

アプリケーションの説明

アプリケーションの説明です。最低文字数による制限があるのであまり短い場合ははじかれます。

アプリケーションのウェブサイトURL

アプリケーションのURL。前述の~からのアプリケーション名からリンクされます。ブログのトップページなどを指定すればよいでしょう。

所属会社/団体

個人であれば無記入で問題ないようです。ブログ名などでも問題ないかと。

サイト

あなたの会社や組織のホームページを指定します。ということなので、こちらも個人であれば無記入でよさそうです。

アプリケーションの種類

ブラウザアプリケーションを選択してください。

コールバックURL

ここで設定しても結局APIの呼び出し時の設定引数が使われるので意味の無い不憫な子?プラグインを利用するブログのURLを設定しておくのが無難かと思います。

標準のアクセスタイプ

Read & Write(読み書き)で。

Twitterでログインする

どっちでも良さそうなので「はい」で。

2つの単語

頑張って読んでください。たまに絶対に読めなさそうなものが出てきますが、少しくらいなら間違っても許してもらえるみたいですね。

入力が終わったら保存を押して登録完了です。

次は Consumer key と Consumer secret。Access token と Access token secret を取得します。

img02

https://dev.twitter.com/appsにアクセスすると、先ほど登録したアプリケーションが表示されているので、アイコンをクリックしてアプリケーションのページへ移動。

img03

ページ内にConsumer keyConsumer secretがあるのでメモしておきましょう。

img04

同じページの下側にYour Access TokenとしてTwitterが用意してくれたアクセストークンがあるのでAccess tokenAccess token secretをメモしてください。

メモした内容は後ほど使用します。

これで事前の準備はおしまいです。次はプラグインのインストールです。

インストール

pw_twitter(最新版)

上記リンクからzipアーカイブをダウンロードしてください。ダウンロードしたアーカイブを解凍して出来るフォルダの名前をpw_twitterに変更してWordPressのプラグインフォルダ(wp-plugins)に置き、管理画面のプラグインからpw_twitterを有効化すれば完了です。

pw_twitterフォルダ内のcache/およびicon/の2つのフォルダはプラグインから書き込みを行うので、Apacheに対して適切なアクセス権をつけておいてください(chmod 777とか)

プラグインの設定

pw_twitterを有効にすると管理画面の設定メニューにPW_Twitterという項目が追加されます。

クリックすると設定画面が表示されます。

設定項目は以下の通りです

  • Twitterのユーザ名
  • Twitterアイコンのキャッシュタイム
  • Twitterアイコンのprefix
  • Twitter APIの各種キー
  • 投稿時のつぶやき内容の設定

アイコンのキャッシュタイムは一度表示したアイコンをどの程度キャッシュしておくかの設定です。ちなみにキャッシュは単純に画像ファイルをプラグインフォルダ内のiconフォルダに保存するだけです。ファイルを書き込むのでiconフォルダのアクセス権は適当に設定してください。

アイコンのprefixは保存するアイコン画像のファイル名の前につける文字列です。単一のワードプレスで複数のブログを運用している場合などに少し幸せになれるかもしれません。

記事をポストした時のつぶやき設定は記事ポスト時にTwitterにどのようにつぶやくかの設定です。%で囲まれた変数はそれぞれ以下のように置換されます。

%SITE_NAME%ブログの名前
%POST_TITLE%投稿した記事のタイトル
%POST_AUTHOR%投稿した記事の作者
%POST_EXCERPT%記事の概要
%POST_URL%投稿記事のパーマリンク
%ADD1%投稿時のカスタムフィールド1(後述します)
%ADD2%投稿時のカスタムフィールド2(後述します)
%%%%

APIの各種キーは事前準備で用意したものを入力してください。

設定が終われば後はプラグインを使うだけです。

プラグインの使い方

プラグインを有効にした後にテーマファイルなどからPHPの関数を呼び出すことで処理を行います。

プラグインを設定するだけで表示されると思っていましたか?そんなフレンドリーな仕様ではありませんよ。

つぶやきを表示する

つぶやき表示に使用する関数はPW_Twitter::dispTweet();です。

関数の引数として動作オプションを連想配列で与えることが出来ます。以下はオプションとデフォルト値の一覧です。

オプション名デフォルト値説明
containerdivつぶやき全体を格納する要素
classnullcontainerにつけるclass名
count1表示する最大件数です
max1取得するつぶやきの最大件数です
negativematchnull表示しないつぶやきをフィルタするための正規表現
wrapnullつぶやき1件単位のラッピング要素
twdefaultget_bloginfo(‘description’)つぶやきを取得出来なかったときに表示する内容
twlinkfytrueつぶやき中のurlやユーザ名をリンク化するか
twwrapnullつぶやき本文のラッピング要素
tmago‘hour’時間表示を「n分前」みたいにする閾値です。
tmformat“%j月%d日 %A %p%i時%m分”tmagoの閾値外の時間表示フォーマット
tmlinkfytrue時間部分をリンク化するか
tmwrapspan時間部分のラッピング要素
echotrue結果を表示(echo)するか文字列として返却するか
apiWP_PLUGIN_URL/pw_twitter/pw_twitter_timeline.phpツイートを取得するための自前APIのURL(基本的に設定する必要無し)

maxとcountは、つぶやきをmax件取得してそこからcount件表示。として使用されます。countとmaxはnegativematchを使う場合に意味のでてくるオプションです。

negativematchを設定すると指定した正規表現にマッチするつぶやきは表示しなくなります。ブログ更新のつぶやきを除外したい場合などに使えます。

tmagoにはjustnow,second,minute,hour,day,week,month,yearが指定可能です。つぶやいてからの経過時間がこの指定単位より大きくなったら、~前の表示からtmformatによる固定表示指定にさしかわります。tmformatのフォーマット指定は以下のとおりです。

%a曜日の省略名(日~土)
%A曜日の正式名(日曜日~土曜日)
%b月の名前(1月~12月)
%B月の旧名(睦月~師走)
%d10進数で表す月の日付(1~31)
%D10進数で表す月の日付(01~31)
%h24時間表記の時間(0~23)
%H24時間表記の時間(00~23)
%i12時間表記の時間(1~12)
%I12時間表記の時間(01~12)
%j10進数で表す月(1~12)
%J10進数で表す月(01~12)
%m10進数で表す分(0~59)
%M10進数で表す分(00~59)
%pAM/PM
%P午前/午後
%s10進数で表す秒(0~59)
%S10進数で表す秒(00~59)
%y10進数で表す西暦の下2桁(00~99)
%Y10進数で表す4桁の西暦

アイコンを表示する

ツイッターアイコンの表示に使用する関数はPW_Twitter::dispIcon()です。

関数の引数として動作オプションを配列で与えることが出来ます。以下はオプションとデフォルト値の一覧です。

オプション名デフォルト値説明
wrapdiv全体を格納する要素
classpwtw-iconwrapにつけるclass名
size‘normal’表示するアイコンのサイズ
img_classnullアイコン画像につけるclass名
linkfyfalseアイコンをリンク化するか
link_classnullリンク化した時にリンクにつけるclass名
no_cachefalseキャッシュしたアイコンを無視して取得するかのフラグ
only_urifalseアイコンのuriだけを表示
echotrue結果を表示(echo)するか文字列として返却するか

sizeの指定は、mini, normal, bigger, originalがあります。

フォローボタンを表示する

押すだけでフォローが完了するフォローボタンが設置できます

使用する関数はPW_Twitter::dispFollowButton()です。

関数の引数として動作オプションを配列で与えることが出来ます。以下はオプションとデフォルト値の一覧です。

オプション名デフォルト値説明
wrapdiv全体を格納する要素
classpwtw-followbuttonwrapにつけるclass名
echotrue結果を表示(echo)するか返し値にするか

ユーザ名を表示する

使用する関数はPW_Twitter::dispUserName()です。

関数の引数として動作オプションを配列で与えることが出来ます。以下はオプションとデフォルト値の一覧です。

オプション名デフォルト値説明
wrapdiv全体を格納する要素
linkfyfalseユーザ名をリンクにするかどうか
link_classnullリンク化した時にリンクにつけるclass名
echotrue結果を表示(echo)するか返し値にするか

投稿時のつぶやき個別設定

プラグインの設定で書きましたが、個別のエントリ毎につぶやき設定の置換変数%ADD1%%ADD2%に置換される文字列を設定できます

img05

この設定を使用すれば、つぶやきの投稿時にハッシュタグを追加したり@メンションを追加したり、その他好きな文字列を追加することが可能です。

img06

また、ツイートルールを設定することで今回の投稿・更新に限ってのつぶやき処理を設定することが出来ます。

update_with_media

バージョン2.0以降から、エントリ内の最初のimgをつぶやきに添付出来るようになりました。チェックボックスをONにすると画像を添付してつぶやきます。「メディアを追加」でアップロードした画像のみの対応です。エントリ内最初の画像がアップロード画像ではない場合はつぶやき自体が失敗します。またTwitter側の制限で許可されない画像の場合もつぶやきに失敗します

最後に

これで一通りの説明は終了です。有効にするだけで動作するようなお手軽なプラグインではありませんが、その分自由なカスタマイズが出来るようにしたつもりなので、気になった方は是非使ってみてください。

ダウンロード

polywogレーベルページに戻る