plugins:simplepie

NP_Simplepie.php

フィードを取得し、それぞれ任意のテンプレートで表示するプラグインです。 NP_NewsfeedEXの後継。複数のテンプレートへの対応としてNucleus本体のテンプレート機能を利用する方式になりました。

また、Simplepieのバージョンアップに合わせて、PodcastやVideocastへの対応などが盛り込まれています。

  • テンプレートをNucleusの基本機能を利用することにより、マルチテンプレートに対応
  • テンプレート変数の拡張し、Subscribe機能やAdd_to機能も搭載
  • はてなの拡張RSSをSimplepieの拡張クラスにし、はてなブックマークへの登録URLの生成を追加
General Plugin info
作者: ZeRo
最新のバージョン: v1.01c (2009/5/10)
ソース: simplepie_code
入手先: PETiT POWER
動作サンプル:
フォーラム参照先: 無し
セキュリティチェック: 未チェック
ステータス:

インストール方法

  1. ダウンロードしたアーカイブ一式をnucleus/pluginsディレクトリにアップロードします。
  2. simplepieは、別途こちらよりダウンロードし、nucleus/plugins/simplepieフォルダにsimlepie.incをアップロードします。
  3. Nucleusの管理画面にて、プラグインSimplepieを登録します。
  4. プラグインの編集にて、プラグインの動作設定を行います。
  5. テンプレートを作成します。(詳細はテンプレートの作成へ)
  6. スキンまたは記事にて、NP_Simplepieを呼び出します。(詳細は呼び出し形式へ)

※現在、対応しているSimplepieのバージョンは、1.0.1です。

このプラグインの使い方

PETiT POWER
http://www.petit-power.com/nucelus-np_simplepie/

スキンまたは記事内にて、以下の形式で呼び出します。
<%simplepie(フィードURL,拡張クラス名,テンプレート名,表示記事件数,記事番号最大値,キャッシュ有効時間)%>

フィードURL
RSS/XMLなどのフィードURLを指定します。

拡張クラス名
記事を表示する際に利用する拡張クラス名を指定します。(現状では、Hatenaなど) 指定しない場合は、プラグイン設定で指定した既定のクラス名を使用します。

テンプレート名
利用するテンプレート名を指定します。(指定しない場合は、プラグイン設定で指定した既定のテンプレート名を使用します)

※本プラグインにてフィードを表示するには、Nucleus管理画面のテンプレート編集で新規にテンプレート作成を行う必要があります。「Simplepie/default」などとしておくとよいでしょう。利用できる変数については、後述の「テンプレートの作成」を参照ください。

表示記事件数
表示する記事件数を指定します。但し、指定記事数よりも取得する記事数が少ない場合は取得した記事数までとなります。

記事番号最大値
アイテム本体で利用する記事番号の最大値を指定します、これによりテンプレート変数noが1~最大値を件数分繰り返します。2を指定すると1,2と交互にnoが変わります。なお、0を指定した場合は記事件数までのシーケンシャル番号となります。

キャッシュ有効時間
キャッシュの有効時間を指定します。(単位:分) 指定しない場合は、プラグイン設定で指定した時間が使用されます。

テンプレートの作成

アイテムのヘッダー、アイテムのフッタ、アイテムの本体に利用するテンプレート部品を登録します。 テンプレート内に利用できる変数は、Simplepieが提供するgetメソッド、Subscribeメソッド、Add_toメソッドが利用できます。(但し、文字列が戻り値となるもの)

Subscribeメソッドは、ヘッダー・フッタのみに利用可能で、Add_toメソッドはアイテムの本体のみに利用可能です。また、アイテム本体には本プラグイン特有の変数(<%no%>)があります。なお、テンプレート変数の書式は、Nucleusと同様<%変数名%>または<%変数名(引数・・)%>の形式になります。

テンプレート変数(ヘッダー・フッタ用)

<%title%>
フィードのタイトル

<%permalink%>
フィードのURL

<%description%>
フィード概要。<%description(タイプ,長さ)%>の形式が利用可能です。 タイプには、textまたはhtmlが指定でき、textはHTMLタグを除いたプレーンテキスト形式になります。 長さは、切り出す文字列の長さを指定できます。(0または指定なしではすべてが表示されます)

<%image_title%>
ロゴイメージのタイトル

<%image_url%>
ロゴイメージのURL。<%image_url(width,height%>の形式が利用可能です。

<%subscribe_xxxx%>
Subscribeの機能です、詳細はsimplepieのAPIドキュメントを参照してください。

テンプレート変数(アイテム本体用)

<%title%>
記事のタイトル

<%permalink%>
記事のURL

<%author%>
著者名

<%category%>
カテゴリ名

<%description%>
記事概要(書式は、ヘッダー・フッタと同様)

<%date
日付

<%enclosure%>
Podcast/videocastの表示(表示形式は、Simplepie依存となり、その為のパラメタはテンプレートで指定します。

<%add_to_xxxx%>
記事のブックマーク用の変数(詳細はsimplepie.orgのAPIドキュメントを参照してください)

<%no%>
記事のシーケンシャル番号で、呼び出しパラメタの最大値と連動し、1~最大値までの番号に変換されます。この変数を利用することにより、例えば1行おきに記事の背景色を変えるなどが行えます。 拡張クラスが提供するgetメソッド及びadd_toメソッドも利用可能です。(詳細は拡張クラスを参照してください)

オプション

[Enable/disable caching in SimplePie]
キャッシュを利用するかどうかの指定です

[Set the folder where the cache files should be written]
キャッシュの格納場所を指定します。 プラグイン初期時は、自動的にmedia/cacheの物理パスが入っています。

[Set the minimum time for which a feed will be cached]
キャッシュの有効時間を指定します。(単位: 秒)

[default item class name]
Simplepieの拡張アイテムクラスを既定値としたい場合にクラス名を指定します。

[default template name]
テンプレート名を指定しなかった場合の標準テンプレート名を指定します。

[default amount]
記事表示数を指定しなかった場合の標準値を指定します。

Tipsと裏技

  • Simplepie_Item_Hatenaについて

添付ファイルのsimplepie_hatena.incはITEMの拡張クラスであるSimplepie_Item_Hatenaのソースファイルです。本拡張クラスは、はてなRSSが提供するAGGREGATIONタグを認識する為のdate/categoryメソッドの拡張とSubscribe_hatenaを提供します。

  • ライセンスについて

simplepie_hatena.incは、simplepieに準拠します。(BSD) NP_Simplepieプラグイン本体は、NucleusCMS及びhtml2textクラスに準拠します。(GPL)

  • プレーンテキスト変換に利用しているクラスライブラリ

本プラグインのDescriptionにtextパラメタで利用するHTML⇒TEXT変換に利用しているのが、Jon Abernathy氏が公開している「Converts HTML to formatted plain text」です。

希望事項

バグ

開発履歴

  • Version 0.101c リリース <2009,5/10>
 
plugins/simplepie.txt · 最終更新: 2012/02/19 17:12 (外部編集)