Movable Type 備忘録

 ハッシュ変数使ってフィード一覧表示

  • Jun012008
  • Vote:
    http://bizcaz.com/archives/2008/06/01-173740.php
  • Categories: Tips
  • Tags: , ,
  • Social Bookmark

以前、MTFeed ブロックタグを使ってフィード一覧を表示する方法をご紹介しました。

今回はハッシュを使ってフィード一覧を表示してみます。

フィード一覧説明

ソースは以下のようになります。

  1. <mt:SetHashVar name="feedHash">
  2.     <mt:SetVar name="http://feeds.feedburner.com/ogawa" value="Ogawa::Memoranda">
  3.     <mt:SetVar name="http://feeds.feedburner.jp/oraora" value="WolaWola">
  4.     <mt:SetVar name="http://www.h-fj.com/blog/atom.xml" value="The blog of H.Fujimoto">
  5.     <mt:SetVar name="http://feeds.feedburner.jp/koikikukan" value=" 小粋空間">
  6.     <mt:SetVar name="http://www.dakiny.com/index.xml" value=" 世界中の1%の人々へ">
  7. </mt:SetHashVar>
  8.  
  9. <dl>
  10. <MTLoop name="feedHash" sort_by="key">
  11.     <MTFeed uri="$__key__">
  12.     <dt><a href="<$MTFeedLink$>"><$MTFeedTitle$></a></dt>
  13.     <dd><ul>
  14.         <MTFeedEntries lastn="5">
  15.         <li><a href="<$MTFeedEntryLink$>"><$MTFeedEntryTitle$></a></li>
  16.         </MTFeedEntries>
  17.     </dd></ul>
  18.     </MTFeed>
  19. </MTLoop>
  20. </dl>
  1. 赤字の部分がフィードを読み込みたいサイトさんのハッシュテーブルになります。
    実際には以下のようなハッシュ変数を作ってます。

    1. feedHash[キー] = 値
    2.  
    3. feedHash["http://feeds.feedburner.com/ogawa" ] = "Ogawa::Memoranda"
    4. feedHash["http://feeds.feedburner.jp/oraora" ] = "WolaWola"
    5. feedHash["http://www.h-fj.com/blog/atom.xml" ] = "The blog of H.Fujimoto"
    6. feedHash["http://feeds.feedburner.jp/koikikukan"] = "小粋空間"
    7. feedHash["http://www.dakiny.com/index.xml" ] = "世界中の1%の人々へ"

    ハッシュとは連想配列といって、インデックス番号の変わりにユニーク(唯一)なキーを指定してその値を取得することができてる配列です。
    上記では各サイトさんで配布されてるフィードの URL をキーとしてます。
    値は何でもいいのですが、とりあえずサイト名称を代入してるわけですね。

  2. そして、青字の部分で MTLoop ブロックタグを使ってハッシュテーブル数分のフィードを順次読み出して一覧表示してます。
    その際、キーによるソートも行ってます。

  3. 実際にフィードを読み出すのは MTFeed ブロックタグでして、uri モディファイアに読み出したいフィードの URL を指定します。
    上記ソースでは feedHash 変数のキー($__key__)を指定してあげてます。

  4. MTFeedEntries ブロックタグを使って lastn モディファイア数分のエントリの URL やタイトル名称を取得します。

上記ソースを使うと以下のような表示になります。

Ogawa::Memoranda
小粋空間
オラオラ・フィード
世界中の1%の人々へ

各サイトさんとこで紹介されてる記事を、自分とこのブログ内に一覧表示することができます ( ̄∇ ̄)b
赤い字の mt:SetVar ファンクションタグを追加/削除することで、任意のフィードを読み出すことができます。 また、フィード URL がリンクエラーした場合にはそのフィードは無視されるようです。

 Trackback Pings(0)

No trackbacks found.

 Comments(2)

#1: Posted by Author Profile Page *yu @ June 1, 2008 [REPLY]
user-pic

そんなことも出来るんですね~うるうる

わざわざプラグイン使わなくても、別ブログの更新履歴とかは表示できるってことですよねもじもじ
なんだかいろいろ使えそう・・・

#2: Posted by Author Profile Page bzbell @ June 2, 2008 [REPLY]
user-pic

>>1 *yu さん

MT4 になってプログラマブルなタグが増えたことで自由度が増したってかんじですね。
以前はいろんなプラグイン入れまくってたけど、MT4 になっては必要最小限であとは自分で作って遊ぶ程度かなのほほん

 Post a Comment

 

コメント用フィード