Movable Type 備忘録

 シムエントリ

  • Feb272008
  • Vote:
    http://bizcaz.com/archives/2008/02/27-124351.php
  • Categories: Tools
  • Tags: ,
  • Social Bookmark

こんにちわ^^

ただいまランチタイム真っ只中。
今日は近くの手作り弁当屋さんで済ませました。けっこうおぃひぃんだよ ( ̄∇ ̄)b

そそ、おもしろそうなの見つけたアル。
シムエントリです。以下チョビッと引用します。

シムエントリとは?
書いた記事(エントリ)に近い別の記事を自動的に探し出し、ブログ上にリストアップするブログパーツ。それが『シムエントリ』です。
たとえば…
■「自分が書いた事はほかの人はどう書いたのだろう?」
■「自分のブログを同じ興味を持った人にもっと読んでもらいたい!」
という想いにお応えします!

使い方

使い方はカンタンで、

  1. 自分のサイトの URL、またはフィードの URL を入力してまずは登録します。
  2. ブログ記事のテンプレート内に指定の JavaScript を埋め込んでおきます。
    その際、そのページの URL を個別に指定する必要があるので、MTEntryPermalink タグを使います。
  3. あとは、ブログ記事のテンプレートを再構築してあげます。

以上です。
表示されるまでに少し時間がかかるようですが、わたしも先ほど追加してみたのでどんなサイトのさんの記事がピックアップされるのか楽しみです。

あまりにもおっかしい記事やそぐわない記事が表示されるようだったら、速攻削除します (; ̄∇ ̄A

気が向いたら試してみるといいのココロ。

- 2008.03.02 追記 -

デフォルトでは IFRAME を使用していたので、Ajax に変更してみたのですが、レスポンスが返ってこない!? ようなのでやめました。
具体的には以下のようなスクリプトを作成して確認しました。

  1. var siment_elm = '';
  2.  
  3. function siment_parser(divid)
  4. {
  5.     var pars = 'entry_uri='+document.location.href.replace(/#.*/,'');
  6.     siment_elm = divid;
  7.  
  8.     new Ajax.Request('http://se.koemu.com/cgi-bin/sim-entries.cgi', {
  9.                     method: 'get',
  10.                     parameters: pars,
  11.                     onComplete: function(req) {
  12.                         var data = eval("("+req.responseText+")");
  13.                         var out = '<ul id="siment">';
  14.  
  15.                         if (data.length) {
  16.  
  17.                             for (var i = 0;data.length > i;i++) {
  18.                                 out += '<li><a href="' + data.entry_uri + '" title="' + data.entry_title + '">' + data.entry_title + '<span>' + data.site_title + '</span></a></li>';
  19.                             }
  20.                         }
  21.                         else {
  22.                             out += '<li>no data</li>';
  23.                         }
  24.  
  25.                         out += '</ul>';
  26.  
  27.                         $(siment_elm).innerHTML = out;
  28.                     }
  29.                 });
  30. }

そして、テンプレートには以下のように記述します。

  1. <div id="siment_box"><script type="text/javascript">siment_parser('siment_box');</script></div>

赤い字の部分を合わせます。
そうすると以下のような出力になるはずでした (; ̄∇ ̄A

  1. <ul id="siment">
  2. <li><a href="エントリ URL" title="エントリタイトル">エントリタイトル<span>サイトタイトル</span></a></li>
  3. </ul>

残念。

 Trackback Pings(0)

No trackbacks found.

 Comments(6)

#1: Posted by Author Profile Page oscar @ March 11, 2008 [REPLY]
user-pic

こんばんは。

例えば
http://se.koemu.com/cgi-bin/sim-entries.cgi?entry_uri=http://bizcaz.com/archives/2008/02/27-124351.php
とかすると、JSONで戻るみたいだけど、それならAjaxOKじゃないですか?

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

>>1 oscar さん

こんにちわ^^
> …JSONで戻るみたいだけど、それならAjaxOKじゃないですか?

はい。
そのようなのですが、サーバ(sim-entries.cgi)から応答が帰ってこなかったんですグウグウ
クライアント(JavaScript)からのパラメータの渡し方といってもシンプルなのでミスはないだろう…ということで諦めたんですあせあせ

そそ、書籍の方来月発売とのこと。
先ほど dakiny さんのブログ見て知りました。
oscar さん教えてくれればいいのにぃキャハハ
発売されたら oscar さんの初執筆拝見させてもらいますもじもじ

#3: Posted by Author Profile Page oscar @ March 12, 2008 [REPLY]
user-pic

もしかして、ここのデータが集まってないだけとかじゃないですか?
今やると、動くのかも。

私も余裕が出来そうなんで、いろいろ手をつけ始めました。
まだ、空っぽの[]が、帰ってきます。

#4: Posted by Author Profile Page bzbell @ March 12, 2008 [REPLY]
user-pic

>>3 oscar さん

こんにちわ^^
> もしかして、ここのデータが集まってないだけとかじゃないですか?
なるほど!! そういうこともありそうですねキャハハ
データがないならないで何等かの応答して欲しいとこですけどねぇガーン
も一度確認してみます

#5: Posted by Author Profile Page oscar @ March 12, 2008 [REPLY]
user-pic

最初に書いたここのデータのJSONの戻りは、それなりに値が返ってきますが、機能夜にセットした私のブログだと [] だけしか戻りません。

今試せば、動いたりしませんかね。

#6: Posted by Author Profile Page bzbell @ March 12, 2008 [REPLY]
user-pic

>>5 oscar さん

> 最初に書いたここのデータのJSONの戻りは、それなりに値が返ってきますが、機能夜にセットした私のブログだと [] だけしか戻りません。

お手数おかけしましたもじもじ
今晩わたしも確認してみます。

- 2008.03.13 追記 -
やっぱり応答がないです。
iframe だと OK みたいなので HTML ヘッダを読んでるのでしょうか。
単純に GET しただけではダメみたいです。残念。

 Post a Comment

 

コメント用フィード