IFTTTでWordPressをトリガーとした場合のfilter指定方法

こんにちはRoidです。

実のところ、このブログを開始するのと同じくらいのタイミングで、ちょろっとニュースキュレーションサイトを作ってみているます。自動アップされる記事数が中々多く、Twitter展開するのに苦慮していました。

WordPressにも、新規ポスト投稿時にTwitterに自動投稿できるプラグインがいくつかあります。ただ使用するには、TwitterのAPI開放をしてもらう必要があり、その審査に10日以上かかるということだったので、せっかちな自分は別の方法を探してみました。

目次

IFTTTを使ってブログをTwitterに自動投稿

そこで使えたのが懐かしのIFTTTです。IFTTTは、様々なWebサービスやアプリを組み合わせ、プログラミングなしでも自動化の仕組みが作れるサービスです。基本的な設定は、以下のような大味なUIから接続するサービスを選択していく流れになります。

細かい使い方などは、他の方のブログ記事などでも多く触れられているのでここでは割愛します。

IFTTTの制約条件(Twitter関連)

ただ今回の場合、記事数が多すぎて、すぐにIFTTTからTwitterへの投稿上限に達してしまうことがわかりました。無料プランだと1日25ツイートまで、有料のPROプランにすれば200まで伸びますが、それでも少ないです。

正直なところ、微妙なニュースも収集していたので、刺さりの良さそうなトピックのポストの投稿時だけ投稿できればOKだと思い、PROプランに登録してみました。

IFTTTのプラン1日あたりのTweet数上限追加機能
FREE25
PRO200query(追加情報取得)、filter(実行条件追加)
IFTTTのプラン比較(Twitterポストをアクションとした時使いそうなもの)

filterを使ってTwitterに投稿するブログポストを絞り込む

というわけで早速、Filterを追加する流れを見てみます。まずはトリガーをWordPress、アクションをTwitterに設定します。その上で、その間にあるプラスボタンを押して、「Add filter」を選択します。

選択したら、filterの編集画面が出てくるので、ここにコードを書けば完成です。JavaScriptが使えるので割と自由に条件を指定できます。今回は、「大谷翔平、K室圭、チャンピオンズリーグ、自民総裁選」のいずれかがカテゴリー・タグに含まれる以外はスキップする、という指定にしてみました。

let categoriesText = WordPress.anyNewPostWp.TagsAndCategories;
let regex = /(大谷翔平|小室圭|チャンピオンズリーグ|自民総裁選)/g;
if(!categoriesText.match(regex)){
  Twitter.postNewTweet.skip();
}

固有のクラス、属性、メソッドについては入力補助と、エディタの下部に参照が書いてあるので、割とサクサクと打てると思います。(記事用に適当に打ったので、

ちなみに「TagsAndCategories」は、カテゴリーとタグが複数設定してある場合、カンマで接続したStringで返却されます。(自分は勝手にArrayだと盲信していてハマりかけました)

最終的には、以下の設定画面になりますので、保存して終了です。

IFTTTのApplet編集画面

まとめ

正直なところTwitterのAPI承認を待てば、WordPress上で設定も出来るので外部のサービスは不要なのですが、IFTTTはWP => Twitterだけではなく様々なサービス間の連携にも使えるので、何かしらの参考になれれば幸いです。

まとめ
  • WordPressからTwitterへの自動投稿はIFTTTを使っても出来る
  • IFTTTには1日あたりのTweet可能数に上限がある(無料だと25件のみ)
  • ちなみに1日の基準はアメリカの西海岸時間
  • PROプランを使えばTweetの上限は200件まで伸びる
  • Filterを使えば、指定した条件のみTweetするという指定ができる

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
目次
閉じる