News Twitter

News Twitterはニュースの記事をTwitterにツイートするようにする機能拡張です。

以下は、News Twitterのバージョン1.2.0 stable (2010年9月14日リリース)を前提としています。このリリースから OAuth によるTwitterの認証をサポートしています。

インストール

機能拡張管理からインストールします。

News Twitterが依存している機能拡張inputcountも同時にインストールされますが、さらに新しいバージョンがリリースされていますので、後で更新しておきましょう。

なお、News Twitter 1.2.0からPHPの以下の拡張を使用していますので、これらがインストールされて有効になっていることを確認して下さい。

  • curl
  • json

インストールされていないとニュースアーカイブの設定を変更しようとすると、(PHPのスクリプトが途中で終了して)何も表示されないといった状態に陥ります。

使用方法

インストールすると構成と、各ニュースアーカイブとニュース記事に設定項目が追加されます。

構成

設定に Twitter Authentication が追加され、そこに"Consumer key"と"Consumer secret"の設定項目があります。

ここの2つの設定項目は空欄のままでも一応は動作します。この場合、News Twitterの開発元がTwitterに登録した連携アプリケーションに対して、ツイートするTwitterのユーザーはアクセスを許可することになります。

News Twitterの開発元では、ツイートするTwitterのユーザー自身で連携アプリケーションを登録して、そこに対してアクセスを許可することを強く推奨しています。この設定についてはTwitterの連携アプリケーションで説明します。

ニュースアーカイブ

ニュースアーカイブにTwitterにツイートするかどうかを指定する設定項目が追加されます。

"Enable Twitter"にチェックを入れると"Signin Twitter"というボタンが表示されます。赤字で表示されているのは、

  • エラーの記号に続くメッセージは最初の自前の"Consumer key"と"Consumer secret"を使用していないことに対して警告しています。
  • "Signin Twitter"というボタンの下のメッセージはTwitterでの認証が完了していないことを示しています。

"Signin Twitter"のボタンをクリックすると、

  1. Twitterにログインしていない状態の場合は、Twitterの認証画面に移行します。
  2. Twitterの認証が済むと、連携アプリケーションにアクセスを許可するかどうか確認してきます。

ここでアクセスを許可するとニュースアーカイブでの設定は完了で、"Signin Twitter"のボタンの下の赤文字の警告は消えます。

なお、この設定はニュースアーカイブ毎に必要な点に注意して下さい。

ニュース記事

ニュースアーカイブで"Enable Twitter"を有効にすると、各ニュース記事に"Send Twitter"の項目が表示されます。

個々のニュースの記事(項目)では、"Send Twitter"のチェックボックスでTwitterにツイートするかどうかを選択します。選択するとツイートに関する入力欄が表示されます。

"Twitter message"はツイートするメッセージとなります。

"Twitter status"は現在の状態であり、ツイートの方法の指定でもあります。

  • "Send now"を選択すると記事の保存時に即座にTwitterに送信します。
  • "Schedule"を選択するとContaoの定期実行の機能によって後で送信します。
  • "Sent"は送信後の状態で、これ以降はTwitterに送信することはありません。

"Include news link"のチェックボックスを選択すると、ツイートするメッセージに自動的にニュースの記事のURLを含めます。このときにニュース記事のURLは、URLの短縮サービスhttp://is.gd/を使用して短縮します。

なお、Contaoの定期実行の機能は以下のように動作することに注意して下さい。

  1. フロントエンドへのアクセス、つまりウェブサイトへの外部からのアクセスをきっかけに処理を行います。
  2. 行う処理は1時間、1日、1週間の3つの繰り返しの周期で設定できる様になっています。

News Twitterの場合は1時間毎に行うようになっていますが、実際に処理がされるかどうかは、外部からのアクセスに依存することになります。(オペレーティング・システムのcronの機能で定期的に実行を行う方法もあります。)