twitter : してログ

画像付きツイートは希望通りの動作なのですが、画像が無いと image not found という画像になってしまう。当然と言えば当然なのだが、これではちょっと困るため回避方法を考えてみた。

必ず RSS フィードに画像を出力する

記事内に画像が入っているか調べ、入っていない場合はカテゴリに対応するアイコンやアイキャッチ画像を追加してしまう方法です。WordPress の人は改造してこの方法を使っている人がいるみたいです。

RSS フィードを画像付きと画像なしに分ける

記事内の画像の有無によって、画像付きの記事だけのフィードと、画像なしの記事だけのフィードに分けるようにします。画像付きのほうは「post a tweet with image to」で登録し、画像なしは「post a tweet to」で登録します。

今どき、RSS だけでは見てもらえないので、twitter に自動ツイートするためにアカウントを作成しました。自動ツイートのサービスをいくつか検討していますが、ちょっと理解が足りていないのかしっくり来るものが無くて困っています。API を直に使って自動ツイートさせることは、大昔にやったことがあるので、それも検討しています。

公式 twitter アカウント

https://twitter.com/landherejp

検討した自動ツイートサービス
  • twibble
    シンプルで分かり易いのですが、なぜか画像付きツイートができないようでした。フィード側で相対パスや属性内改行の解消をしてみましたが、どうしてもできないようです(たまたま不具合が出ていたのかも知れませんが)。
  • myThings
    Yahoo! のサービスなので日本語だし、安心感もあるのですが、ツイート文に RSS の内容が使えず「更新しました」のような固定文となるようでした。
  • IFTTT
    myThings と同様の様々なウェブサービスを連携して自動化するサービスなため、少し分かり難い面もありましたが、今のところ希望通りの働きをしてくれています。という訳で、こちらを採用しました。
PHP + cron で、twitter のボットが必要になったんで、いろいろ調べました。

ググって、かかるのは、Basic 認証のサンプルばかりなのだが、どうも今年の8月でこの方法は効かなくなってしまったようだ。それに気づかず、Unauthorized のエラーに悩んだなぁー。

代わりに提供されている方法が、OAuth という技術を使ったもの。仕組みとかはブラックボックスでも、とりあえずサンプルのキー部分を4箇所ほど変更したら動いてくれた。

■PHP+OAuthでTwitter
http://www.sdn-project.net/labo/oauth.html

こうなれば、後は楽ちん。ものの数分でボットが完成。
ここで状況終了。

しかし、コレどういう技術背景か興味は無くは無いが、最近深く調べること無くなったなぁ。
とりあえず、動けばいいや。

※この記事は「Yahoo!ブログ - HDRp」からの転載です