RSS.Graffiti を使って、FacebookとTwiiterにWordPressの更新情報を流す

RSS.Graffiti
RSSフィードURLを利用して、WordPressの記事の更新情報をTwitter と Facebook(ページ)とに流す方法を紹介します。

WordPressだけに限定した話ではありませんが・・・
(先日、WordCampTokyoに参加して来たのですが レポートを書かない代わりに、WordPressを使う人のためになる記事が書ければということで;)

実はブログ記事のタイトルとURL流すだけなら RSS.Graffitiではなく twitterfeed の方が設定は簡単だし、OGPも対応しているようなので、そっちでいいと思います。。。

私の場合、TwitterとFacebookに流す投稿文章の先頭に【ブログ書いた】を入れたいがためにRSS.Grafittiを使っています。

Twitterfeed でも「Post Prefix」「Post Suffix」まで設定できるのですが、追加した日本語が文字化けしていました(記事タイトルは大丈夫。

まぁ、こちらで RSS.Graffiti と twitterfeed の簡単な比較をされているようですので、dlvr.itなども含めお好みのやつを。

twitterfeedとFacebookのRSS Graffitiはどちらが便利か?
http://ameblo.jp/mattintosh/entry-11077777490.html
それでもRSS.Graffitiを使うのであれば、以下お付き合いをば。。。

Facebookへの投稿

Facebookに流す更新情報は 個人アカウント or Facebookページ どちらでも設定できますが、FacebookページはFacebook内の広報ページのようなものなので、登録しておいて損はないと思います。
Facebookページの作り方
http://f-navigation.jp/manual/pages/make.html
Facebookアプリ RSS.Graffitiを利用出来るように設定します。

アプリ画面へアクセスします。
RSS.Graffiti

アプリを使用していないので、プロフィール画像の横に

Status: Authorization Required
と表示されています。

使用するには、中央の黄線枠の下部 「Click HERE to autorize RSS Graffiti」 ボタンを選択します。

すると、認証画面に移るので認証します。
RSS.Graffiti認証画面

「許可する」を選択して、アプリ画面へ戻って来ると ステータスが

Status: Configured

に変わります。

たまに ステータスが 「Authorization Required」 のままだったり、空欄だったりの時があるので、その時はリロードします。(ペシッ

アプリ認証完了

まずブログの更新をFacebookに流す設定します。

ここで、一考。
Facebookにブログの更新情報を流せるのですが、

  • 個人アカウントのフィード
  • Facebookページのフィード
どちらに流すかを考えます。

個人アカウントの設定を選択している状態です。
個人アカウント選択状態

こちらはFacebookページを選択している状態です。
Facebookページ選択状態

おや、「Disabled」・・・右上のスイッチでONに切り替えてください。
(すいません、色々いじりすぎてデフォルトがONなのかOFFだったか定かじゃないです・・・

投稿したい方の項目から選択します。(私はFacebookページを選びました
「Feeds」タブが選択されていれば、右下の「Add feed」からWordPressのRSSフィードURLを追加することができます。
Facebookページ選択状態

WordPress のRSSフィードのURLをコピーします。

http://nantokaworks.com/?feed=rss2 (※私の場合
RSSフィードURL入力

「FeedURL」にURLを入力し、右下の「click here to fetch and preview」をクリックすると、URLが有効かどうか確認できます。
「Source Name」は入力しなくてもRSSから自動で値を引っ張ってきてくれます。
RSSフィードURL入力

はい、プレビューが表示されてSource Nameも設定されています。
RSS.Graffitiプレビュー(standard)

でもなんか長い・・・

そこで、ページ下部の 「Style」から表示内容を変更します。

種類は3種類

  • Standard
  • Compact
  • StatusUpdate

先ほどのやたら長いのがStandardですね。

こちらはCompact
RSS.Graffitiプレビュー(compact)
おぉ、コンパクト!

こっちは Status updates
RSS.Graffitiプレビュー(status updates)
あぁ、なるほど、ステータスアップデート(?)
ただ、URLが出力されません;
(20111129追加)
「Transform」タブから「Append short URL」にチェックを入れれば大丈夫でした。
(20111129追加終わり)

右上の「Save」をクリックして、設定を保存します。
これで、WordPressの記事をアップすると指定したFacebookページへ自動的に投稿されます。

「Schedule」タブを選択して「Update frequency」の項目をデフォルトの「Every half an hour」から「As soon as possible」を選択すると「なるはや」でRSSフィードを取ってきてくれるようになるでしょう。
RSS.Graffiti Schedule

しかし、「Standard」も「compact」も、OGP設定しているのにサムネイル出ませんね。
なんとか出てもらえると嬉しいのですが。。。

投稿されるメッセージの変更

FacebookページとTwitterに出力の先頭に文言を追加することができます。

上の例なら

【ブログ書いた】 Twitterで見知らぬ人からリプライが飛んできてNode.js勉強会で発表した話 <a href="http://nantokaworks.com/?p=746">http://nantokaworks.com/?p=746</a>

と出したいわけです。

「Transform」タブから「Prefix」に文言を入力すれば、先頭に文言が追加されます。

RSS.Graffiti Prefix設定

Twitterへの投稿

RSS Graffiti からTwitterへの投稿を許可します。

「application setting」を選択

application setting

「Add Account」ボタンをクリックしてTwitterの認証を許可します。
twitter認証

これでTwitterとの紐付けはOK!
twitter認証完了

もう一度、Facebookページを選択「edit」→「More」、紐付けしたTwitterアカウントを選択して、右上の「Save」をクリック。
twitter連携設定

これで、TwitterにもFacebookにもWordPressの更新情報が流れるようになります。
TwitterやFacebookの連携機能を有効にしている場合、投稿が重複してしまうので、注意が必要です。

WordPressにRSSフィードURLが設定されていない

通常RSSフィードは、次のURLで有ることが多いです。
  • http://exsample.com/feed
  • http://exsample.com/?feed=rss2
自分のWordPressにRSSフィードURLが設定されていない場合、 ブログのhead要素内にRSSフィードのURLが出力されているか確認します。
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="http://exsample.com/feed" />
<link rel="alternate" type="application/rss+xml" title="ブログタイトル &raquo; フィード" href="http://exsample.com/?feed=rss2" />

出力されていない場合、function.phpを確認。

add_theme_support('automatic-feed-links');

テーマサポートのfeedURL出力用の関数がなければ追加します。(Ver3 以降

意図的にサイト内にRSSフィードのURLリンクを設置する場合は、

<p><?php the_feed_link(“a要素表示文字列”)  ?></p>

とします。