←前のエントリ |  ↑↑Blog |  ↑Category |  ↓Comment |  ↓Trackback |  次のエントリ→

PiyoFeedsアルファ版機能拡張しました(OKAMURAさん案を採用しました)


JavascriptのオブジェクトとしてRSSの内容を出力します。

一部の方にちょっとウケがよいPiyoFeedsですが、OKAMURAさんのエントリ で書かれていた「JavaScriptオブジェクトに置き換えるだけモード」をお試しで追加してみました。アルファ版のみです。

上級者向けです。興味のある方はお試しください。
通常の使い方は以下のエントリをお読みください。
PiyoFeedsアルファ版
PiyoFeedsアルファ版にてエントリリンクがうまくできない場合の確認事項
PiyoFeedsアルファ版におけるIBlog+HaloScanのエントリリンク化について


1) 設定方法





設定タブの一番下の欄に「Javascriptのオブジェクトとして出力する」を追加しました。
こいつをチェックすると、HTMLではなくて、Javascriptのオブジェクトとして出力されるようになります。

2) リーダでの表示

「Javascriptのオブジェクトとして出力する」をチェックすると、HTMLの出力ではなくなるため、リーダ画面での出力も変更しました。





出力されるJavascriptを参考情報としてiframeで表示します。

3) 利用方法

a) テンプレートの管理部分での設定


を利用するページのヘッダに入れます。2つ目のscriptタグのsrc属性内にあるuseIdとfeedIdの値は利用者によって変わりますので置き換えてください(リーダ画面の下段のテキストエリアに出力されるものです)。

b) ナビゲーションエディタ部分での設定

最初にPF_RSSのオブジェクト(インスタンス?)を作成する必要があります。
下記の例では、「var rss = createRSSFor_test_comments();」がそれにあたります。
function名のtestはuserIdで、commentsはfeedIdです。複数のrssを利用する場合でもオブジェクトを作る関数が違うので対応できることになります。

後は、Javascriptのオブジェクトの構造(後述します)を理解した方であれば、ご自由にお使いください。

例:HaloScanのコメントをエントリページへのリンク付きで表示


この例は、my cheep blog のナビの一番下の方に「PiyoFeedsアルファ版のJavascript出力のテスト」として出してます。


4) 作成するJavascriptのオブジェクトの説明

PF_RSS:「PF_Channel」 と 「PF_Itemの配列」を保有します。それぞれ、[channel]、[items]で参照できます。
PF_Channel:「title」と「url」を保有します。それぞれ、[title]、[url]で参照できます。
PF_Item:「title」「link」「description」を保有します。それぞれ[title]、[link]、[description]で参照できます。

5) 提供される関数の説明

http://www.piyosystems.com/kuki/js/PiyoFeedsCommon.js

により提供される関数について説明します。

・getPfEntryUUIDFromHaloScanUrl(url)

HaloScanのコメントURL(url)を引数として渡すとEntryUUIDを返します。OKAMURA さんのCommentList.js を参考にさせてもらっています。

url:HaloScanのコメントのURL。

・getPfEntryLink(baseUrl, entryUUID)

iBlogサイトのベースURL(baseUrl)とiBlogのエントリ識別子から、エントリページへのリンクを返します。CommonLib.jsにgetCategoryUUIDForEntryが存在する必要があります。

baseUrl:iBlogサイトのベースURL(カテゴリフォルダの前までです。http://xxx/yyy/C1234/E1234/index.htmlとかであれば、http://xxx/yyy/です。)
entryUUID:iBlogのエントリ識別子。上記のgetPfEntryUUIDFormHaloScanUrlなどを用いて取得してください。

うまく動作しない場合は、設定ミスもありますが、バグの可能性もあるので遠慮せずドンドン聞いてくださいませ。

( ・∀・)つ〃∩ ヘェーヘェーヘェー">
投稿時間: 2004年10月02日 (土) at 21:18   

←前  |  ↑↑Blog |  ↑Category |  ↑Entry top |  ↑Comment |  次→
←前  |  ↑↑Blog |  ↑Category |  ↑Entry top |  ↑Comment |  次→