どうも、白夜霧(@KiRi_Byakuya)です。
今回はWordPressで新しい記事を投稿すると、Twitterで自動的に記事のツイートが投稿されるようにするための方法の覚書。
目次
実施する環境メモ
IFTTTとは?
IFTTTは、異なるソーシャルメディアやプラットフォームを連携させるWebサービスです。Instagram(インスタグラム)やGoogleドライブ、Evernoteといったプラットフォームの仲介役をしてくれます。
今回は、IFTTTを使って「WordPress」と「Twitter」を連携させます。IFTTTは無料で使えるWebサービスです。使用するにはユーザー登録が必要なので、前もって準備して下さい。
注意事項
今回紹介する自動投稿の方法では、WordPressから新しい記事を投稿して、Twitter側で自動的にツイートされるまでにある程度の遅延が発生します。その遅延する時間は状況によって変動し、数分だったり数十分だったりします。なので『記事を投稿したらすぐに自動投稿されないとヤダ!』という人にはオススメしません。
リアルタイムで自動投稿して欲しい、という人はWordPressのプラグイン(Social Networks Auto-Poster、Blog2Social)を使って下さい。プラグイン側ならスケジュールを設定して投稿も可能です。ただし、設定が若干面倒です。この部分は各運用に合わせて検討して下さい。
また、今回の連携には一部サーバー側のセキュティをOFF(サーバー側は非推奨)に設定する必要があります。この点に関しては全て自己責任でお願いします。
サーバー側のセキュリティ設定を変更する
IFTTT側でWordPressを連携させる際、サーバー側のセキュリティ設定を変更する必要があります。私の環境では『エックスサーバー』ですが、他のサーバーでも変更が必要な場合があります。
セキュリティ設定変更方法は下記記事を参考にさせて頂きました。「ロリポップ」や「さくらレンタルサーバー」を使用している人は下記を参考にして下さい。
step
1エックスサーバーにログイン
エックスサーバーの「サーバーパネル」ログインする。
step
2セキュリティ設定を開く。
「WordPressセキュリティ設定」をクリック。
step
3ドメインを選択する。
連携するブログのドメインを選択する。
step
4制限をOFFにする。
「XML-RPC API アクセス制限」を「OFFにする」を選択して「設定する」ボタンをクリック。
「XML-RPC API アクセス制限」とは?
スマートフォンアプリや外部システムから、リモートで記事の投稿や画像のアップロードを行う際に利用される「XML-RPC WordPress API」に対する国外IPアドレス及び一部の国内ホスティングサービス環境のアドレスからの接続を制限します。
step
5設定完了
「国外IPアクセス制限設定の変更が完了しました。」と表示されれば設定完了です。
IFTTTでWordPressとTwitterを連携させる。
step
1IFTTTを開く。
「IFTTT」を開いて「Create」をクリック。
step
2トリガーとなるサービスを選択する。
「+This」をクリック。
step
3WordPressを選択する。
「Search Services」(検索バー)に「WordPress」と入力して「WordPress」を選択する。選択したら「Connect」をクリック。
step
3連携先のブログ情報を入力する。
連携させる「Blog URL」「Username」「Password」を入力して「Connect」をクリック。
ココに注意
- 入力する「Username」「Password」はWordPressのアカウント情報です。
- 「Blog URL」に入力するURLは、WordPressのダッシュボードから「設定」→「一般設定」の「WordPress アドレス (URL)」に記入されているURLです。
step
4トリガーを選択する。
トリガーとなる動作を選択する。今回は「新しい記事を投稿」をトリガーとするので「Any new post」をクリック。
- Any new post:新しく投稿された全ての記事が公開された時に発生するトリガー。
- New post with tag or category:特定のタグやカテゴリーに該当する新しい記事が投稿された時に発生するトリガー。
設定が完了するとWordPressのアイコンが追加されます。
step
5Twitterを連携する。
「Then」の次の「+This」をクリックして、Twitterを選択する。選択方法はステップ3と同じなので省略。
「Connect」をクリックすると、Twitter側の認証画面が表示されので「連携アプリの認証」をクリック。
step
6アクションを選択する。
認証が完了するとアクション選択画面が表示される。今回は「Post a tweet」を選択。
- Post a tweet:ツイートを投稿
- Post a tweet with image:画像付きのツイートを投稿
- Update profile picture:プロフィール写真を更新
- Update bio:プロフィールを更新
step
6自動投稿されるツイート文を設定
「Tweet text」が自動投稿されるツイートの本文部分になります。「Add ingredient」をクリックするとタグを追加でき、投稿の内容を追加することが可能です。
上記設定は後から変更可能です。タグの詳細は後ほど詳しく説明します。とりあえずデフォルトのままで「Create action」をクリック。
step
6連携完了
「Review and finish」の「Finish」をクリックすれば連携は完了です。
「Receive notifications when this Applet runs」は、この連携が実行したことを通知するかどうかの設定です。設定はお好きなように。
アプレットの設定変更方法
作成したサービス(アプレット)は「My Applets」に表示されている該当するアプレットをクリック。
右上の「Setting」をクリックすれば設定を変更できます。
追加できるタグ(ingredient)について
自動ツイートに追加できるタグ(ingredient)を全て追加するとこんな感じです。
さらに詳しく
- PostTitle:記事のタイトル
- PostUrl:記事のURL
- PostContent:記事の「抜粋」+コピーライト?
- PostimageUrl:画像のURL?※サムネ画像のリンクではない。
- TagsAndCategories:記事のタグ
- PostPublished:投稿日時と時間
画像のURLってどうやって設定するのかわからん!
注意点
タグとタグの間になにか文字を入れるとツイートに失敗するみたいです。改行も駄目でした。
※↓ツイートに失敗した設定。
試しに先頭に文字列を追加してみたら成功しました。やっぱりタグとタグの間に文字を入れるのはNGなのかな?