2007/03/09

Blogger で「続きを読む」機能を。-- 3.5

既にWidget内への実装ではなくなってるので、タイトル変えました。

色々と試行錯誤をしている間に、なんか意味不明になりつつある、「続きを読む」機能ですが、前回の記事で CSSの機能で「続きを読む」機能の不備は補完できるって話を同僚から聞いたので、それを試してみました。

本来ならば即座に前回の記事をUpdateするつもりだっのですが、そのSuggestionをくれた同僚と飲みに行ってしまったので、この時間の別記事での投稿となりました。


しかしながら、その同僚からさらなるアドバイスを貰えたりしたのでメリットは多大にありました。

まず聞かれたのは「PV(Page View)はどれくらい?」と。ちょっと鯖読んでAbout 500 per day.とかって目標としているような数値を答えてしまいましたが、本当の問題は、その中のブラウザの比率を知りたかったらしいです。

実はAdjacent sibling selector(隣接セレクター)はCSS2.0な規格で、Firefox(Mozila)、Operaでは早くから対応してらしいけど、IE6は対応してないので、IE6ユーザーが多いならその対応は薦められないと。IE6の使用率は半数近くを占めていて未だに無視できないと。

Inernet Explorer 7はCSSに本気で対応したというのが売り文句の一つらしいですが、IE6をフォローしようとすると、css的なアプローチをするとしてもBehaviorからスクリプトって流れになるので、先に両方に対応できるScirptを書いたのならばそれでいいじゃないって結論を、人の奢りのビールを飲みながら出してくれました・・。

こんな話はあったのですが、試してみないとって事で。

ベースとなるのは、 Blogger Widgetで「続きを読む」を自動化。-- 3.1で書いた内容になります。


基本的にStyleの設定を変更するだけですので、Template内にstyle指定を追加します。このstyleタグを入れる場所ですが、</head>タグの直前が良いかと思います。別所ではbodyタグ内に入れている例もありますが、DTD的にも正しくないかと思いますので。


]]></b:skin>

    <style type='text/css'>
      <b:if cond='data:blog.pageType == "item"'>
        .fullpost {display:block;}
        .readmore {display:none;}
        .readmore2 {display:none}
        <b:else/>
        .fullpost {display:none;}
        .readmore {display:block;}
        .readmore2 {display:none;}
        .fullpost + .readmore2 {display:block;}
      </b:if>
    </style>

</head>


上記のように通常のTemplateですと</head>の直前には</b:sink>があると思いますので、その間に挿入する形で言いかと思います。

classでreadmoreとreadmore2と両方指定していますが、readmoreは以前の投稿した記事に対する為で、記事内部に投稿時に手書きでclass="readmore"なタグがある事を想定しています。

readmore2への指定が今回の変更部分です。blog.pageTypeがitemでは無い場合にも基本は隠す(display: none)のですが、直前にclass="fullpost"なタグがあった場合は表示(display:block)しています。

この.fullpost + .readmore2 部分が Adjacent sibling selector(隣接セレクター)指定になります。

そして投稿記事の直後にreadmoreなソースを自動的に挿入するために、使っているテンプレートにより若干の違いがあるかと思いますが、と書いてある直後にタグを追加します。


    <div class='post-body'>
        <p><data:post.body/></p>
    </div>
    <div class='post-footer'>


上記のような部分を以下のように変更します。

<div class='post-body'>
  <p>
    <data:post.body/>
      <b:if cond='data:blog.pageType != "item"'>
      <div class='readmore2'>
        <a expr:href='data:post.url'>
          続きを読む・・
        </a>
      </div>
    </b:if>
  </p>    
</div>
<div class='post-footer'>


ポイントは、記事データ(<data:post.body/>)の直後に<div class="readmore2">で隣接関係を作り出そうとしている部分です。

要約したい記事(「続きを読む」を使う)は投稿される際に以下のような形式である必要があります。


ここは序文です。

要約しないで、一覧表示時にも表示したい部分です。

<div class="fullpost">
ここに要約される記事本文を書きます。
このブロックに書いた部分は一覧表示では表示されません。
</div>


必ず<div class="fullpost">で括る必要があり、それを閉じた以降は改行すらしてはいけません。Bloggerの内部に保存される際に、改行コードが&bt;br/>に置き換えられてしまうために、class="readmore"との隣接関係が崩れてしまうからです。

ですが要約を必要としない記事に関してはこの限りではありません、Reaadmoreなタグは隣接にfullpostが無い限り表示されませんので。つまりclass="fullpsot"を使ったら、それが必ず最後の要素となるように記事を作成する必要があるという事です。

このような形でCSS的な解決方法も出してみましたが、Javascriptを使わないので、その分制約も出てしまいました。苦労した割にはあまりパッとしたものにはなりませんでした・・。


Javasciptで後からダブったreadmoreタグを消し込む前回の方式の方が気楽なので個人的にはこちらでいこうかと思ってます。

続きを読む・・

2007/03/08

Bloggerに投稿した画像がPicasaに!!

なんかダラダラとBloggerの投稿したり・パックアップしたりするアプリを作ろうかとおもって、GData APIからテスト用のBlogに投稿したりしてたですが、なんか適当な画像をと思って自分のPicasaなアルバムからでもと思ってPicasaWebを開いてたら・・。

なんか変なアルバムが出現!!

アルバムの画像は記憶にある。全部BloggerにPostした画像だ。しかもBlog毎にAlbumが分かれてます。だけど一瞬何が起きたのか分からず、「クラックされた??」とかも考えてしまいましたから。

状況を把握しようと思って検索すると、Google Operating SystemのBlogにこんな記事がありました。

つまりは容量の拡大(1GB!!)と検索機能の追加、そしてBloggerからの投稿に対応したそうです。

ちなみにAlbumの中にはこんな感じでアルバムが入ってきます。



ちなみに画像の検索機能は自身で設定からアクティブにする必要があります。



だけど、このオプションって言語設定を英語、それも "English (United States)"を選ばないと出てきません。普段は"English (UK)"にしている私もこれにはハマりました(笑



そんな感じで、Bloggerに投稿してしまった画像は消せない・管理できないと言われてましたけど、過去の分も含めてPicasa Web上で管理できるようになりましたんで、容量の件も含めて、無料のBlogではかなり強力なサービスを提供してくれてるのではないでしょうか?

だけどBloggerに投稿した画像の容量分ってPicasa側に入るって何処にも書いてないんだよなぁ・・・。

でもPicasaはデスクトップ アプリケーションもGoogleから提供されてるし、これで画像のバックアップも安心ではないかと。ちなみにデスクトップなPicasa側からも写真と合わせてBloggerに投稿できます。

アレ、投稿する前にRSS読んでたらクリボウさんが既に書いてた・・・・。

続きを読む・・

2007/03/07

Windows Visata をInstallする前に。

既に日本でも一般向けに発売されてから一ヶ月が経過したWindows Vistaですが、売れ行きはどうなんでしょうか?

私の周りでの普及率はイマイチです。仕事柄、顧客なり関連会社での導入状況も見てますが、絶対的に比率は低いです。WindowsXPからのUpgradeなんて、担当者の先行的というか趣味的/実験的な例以外では未だ聞いた事がないです。

以前にWindows VistaからNASに接続できないトラブルの件に関して書きましたが、これはあくまでも新規のPCにプレインストールでVistaが入っていたものです。

私も職場でやや古いPCにVistaを入れてはありますがRC版であり、最近はあまり触っていません。本来ならばMS
製品にはβ版なりRC版に触れる環境にあるので、もっと評価すべきなんでしょうが、Windows VistaのみならずOffice等の評価も遅れがちです。

ですがここ最近は、Vistaを少し使い込んで慣れたら新しいPCを購入しようかなと考えているので、少しVista導入に関して事前にいくつかのポイントを調べて列挙しようかと思います。

新規のVista対応なPCならば問題なくインストールも出来るでしょうし、プリインストールならば導入そのものは必要ありませんが、購入したPCに何のOSのみでソフトウェアもハードウェアも追加しないなんて事はないので、普段使っているSoftware/Hardwareの対応状況はチェックしておく必要があるかと思います。

私の使用環境で最大の問題となっていたのがVisual Studio 2005です。コードを書くのもレビュー/デバッグするのも、そしてBloggerのテンプレートに手を入れるのにも使ってますし、Windows XP上ではすこぶる安定してますので、これが不安定になったり問題が発生するようでは困ります。

やっと3月日になってVS2005 SP1 Update for Vistaがリリースされました。

だけどこれだけあった問題点が、どこまで対処されたのかが何処にも書いてないような・・。

タイトル : Windows Vista ではデータセット デザイナが非常に低速になる

  • 説明 : Windows Vista では、データセット デザイナの表示が極めて低速です。Windows Vista では Windows 描画のサポート方法が変更になり、この結果デザイナの動作に影響があります。
  • 回避策 : ありません。


こんな感じて「回避策: ありません」なんてのが結構あったのですが、これらに対応したとかの記述を見つけられませんでした。

本来ならVistaインストールのきっかけとなるVS2005 SP1 for Vistaのリリースなんですが、こんな状況であり、自ら人柱的に試す勇気もなく、またしても先送りにされるのでした・・。

続きを読む・・

Blogger Widgetで「続きを読む」を自動化。-- 3.4β

なんか完結させたかった「続きを読む」機能ですが、職場の同僚と話をしていたらCSSに対してのSuggestionを貰ったりしました。

私はデザインの人ではないので(言い逃れ)知りませんでしたが、CSSのセレクターのにはadjacent sibling selectorってのがあって、これは隣接するElementに対する条件指定が出来るとの事。


帰宅後に早々に試す予定・・。

でもBloggerに投稿して記事のソースは、最後尾に意図してなかったタグとか入ってる予感が・・。

続きを読む・・

2007/03/06

BloggerのLabel Feedでエラーが・・。

BetaというかNew Bloggerにはラベル機能があって整理・管理するのに便利なんですが、そのラベル毎にフィードがあるのはご存知でしょうか?

元ネタというか詳しい解説はいつもの如くクリボウさんのページを読んで頂ければと思うのですが、私のこのBlogではラベルフィード機能を使って、記事の下部に「関連のありそうな記事」とかってちょっと間の抜けたLinksを表示しています。

最初は調子良かったのですがレイアウトを修正する為にに何度か自分で試しているとエラーが出ている事がわかりました。


実際にはこの「関連のありそうな記事」は "Bloggerに「関連記事リスト」を。"に書いたように、記事のラベルをLabel FeedをJSONP形式で受け取りその中で日付順の上位5つを現在は表示しています。

Label FeedのURLに関しては上記のクリボウさんのページに"ラベルフィード URL 作成装置"とかも置いてありますのでそちらを参考にしていただくとして、例えばこのBlogで"Blogger"ってラベルのATOM1.0な要約(summary)されたフィードはブラウザにより表示の仕方は変わりますがFirefox2だとこんな感じになります。



上記画像はATOM1.0な形式のフィードに対してFirefoxがスタイル変更をして表示しいますが、ソースはXML形式ですので、これをAJAXな感じでXMLHttpRequestを使って取得して加工し表示って事もありかもしれませんが、フィードのURLが別サイト(www2.blogger.com)になってしまう為、クロスサイトスクリプティング (cross-site scripting) 的なセキュリティー上の問題があり、XMLHttpRequestでは取得する事が出来ません。

ですがBloggerのフィードはJSONそれもCallback指定が可能なJSONPが使えます。Callbackを指定したJSONPなURL<はalt=json-in-scriptとパラメータを指定し、Callbackしてもらう関数名として"callback=任意の関数名"をパラメーターとして指定する形になります。(Javascriptに対してネイティブな形で値を返してくれるので、一手間省けて逆に楽だったりします。)

そのようにして受け取った結果を、今はレイアウトを少し変更しましたので、こんな感じで表示されます。



ですが、これがこんな感じで表示される事があります。



実はこれはJSONPな呼び出しが非同期であり、エラーの検出も困難な為に事前にラベルを列挙して表示しているのです。つまりJSONPな呼び出しが失敗しているんです。

原因はなんだろうとフィードのURLをブラウザで直接開いて見ると、こんなエラー画面が・・・。



別のラベル名で呼び出すとエラーは出ませんが、何度かリロードしてると2~3回でエラーになります。このエラーは暫く時間をおかないと解除されないようで、もしかしたらBloggerの負荷制限なのかとも思っています。

そんな感じで、この件に関してはちょっと情報を漁りつつBloggerに質問してみようかと思います。

Windows VISTAの実環境で使い始めないといけないなぁと思いつつも、勇気と時間がとれなくていまだメインな環境にはインストール出来ない状況です。必要な時間というのは、インストールそのものに必要な時間よりも、その後の設定やトラブルに対処する時間の方です。トラブルってよりも操作方法なり設定が変わった為に出来なくなったり、不具合が出た事に足して対応する時間が惜しいって感じです。以前はそれそのものも楽しめたんですが・・・・・・・・・。

続きを読む・・

2007/03/05

Blogger Widgetで「続きを読む」を自動化。-- 3.3

そろそろ完結にしたい Bloggerでの「続きを読む」機能ですが、簡単に思っていたことが意外と深みに嵌っているような、単なる手抜きの積み重ねのような複雑な様相を呈してきました・・・。

全てはBloggerがBetaからNewになっても、実装というか方針が中途半端なんじゃないかと思ってたりもしますが、個人的には「制約は人を育てる」なんて志向があるんで、これもOKと受け止めております。

そんな感じですが前回の記事の続きとして、早々に余計なReadmoreをタグごと隠すスクリプト(Javascript)を書いてみました。帰宅途中に運転しながら考えて、着替える前に コードを書く⇒テスト の流れの15分ですから例によって寄せ集めですが、それなりに知識なのかスキルなのかが蓄積されてきたらしく、この素早さはちょっと快適。


今回のコードはテンプレートへのタグ追加とセットで動く感じでになりますが、テンプレートへの加工であり記事本体には手を入れていないので、前回まで手順を行っていてもテンプレートを書き換えてスクリプトを追加しただけで表示が変わります。

つまり元々のテンプレートさえBackupしておけば、直ぐに元に戻せますから安心して試せます。

まずはテンプレートの改変。基本的には前々回の記事と同様ですが、後で隠す必要があるので判別の為、<p>タグにクラス名を付加しました。


<div class='post-body'>
  <p>
    <data:post.body/>
  </p>
  <b:if cond='data:blog.pageType != "item"'>
    <p class='readmore2'>
      <a expr:href='data:post.url'>
        続きを読む・・
      </a>
    </p>
  </b:if>
</div>
<div class='post-footer'>


クラス名があるといっても表示・非表示の条件が位置ではなく、「兄弟にfullpostクラスのタグがあるか? 」なんて条件になりますのでスタイルシート指定では対応出来ないのです。(私の知識範囲では)

そこで実行時にスクリプトで該当するclass="readmore2"のタグに対してstyle="display:none"で隠す事にします。該当する条件は本文中にclass="fullpost"なタグが含まれてない事になります。

Javascriptなソースはこんな感じです。


// Remove unnecessarilly ReadMore elements.

// Add Event Listtener
{
    // for Mozilla and Opera9
    if(document.addEventListener){ 
        document.addEventListener("DOMContentLoaded", removeExtraReadMore, false);
    }        

    // for Internet Explorer (using conditional comments)        
    /*@cc_on @*/
    /*@if (@_win32)
        document.write('<script id="_decoy_removeExtraReadMore" defer src="javascript:void 0"><\/script>');
        document.getElementById("_decoy_removeExtraReadMore").onreadystatechange = function(){
            if(this.readyState=='complete'){
                removeExtraReadMore();
            }
        };
    /*@end @*/

}


// removeExtraReadMore
function removeExtraReadMore(){
    // Get all "div" elements which class name are "post-body"
    var elms=getElementsByClassName(document.body,"div","post-body");
    
    for(var i=0,elm=elms[0];elms.length>0 &&i<=elms.length;elm=elms[i++]){
        var eFullPosts = getElementsByClassName(elm,"*","fullpost");
        
        if(eFullPosts.length >0)continue; // has some fullpost tag.
        
        var eReadMores = getElementsByClassName(elm,"*","readmore2");
        
        // Remove Readmore tags.
        for(var l=0,eRm=eReadMores[0];eReadMores.length>0 &&l<=eReadMores.length;eRm=eReadMores[l++])
            if (document.documentElement.getAttribute("style") == document.documentElement.style)
                eRm.style.display="none";
            else
                eRm.setAttribute("style","display:none;");
                
    }// __for(elms) 

}

//
function getElementsByClassName(elm, tagName, className){
    var arRslt = new Array();
    var elms = (tagName == "*" && elm.all)
                    ? elm.all : elm.getElementsByTagName(tagName);

    className = className.replace(/\-/g, "\\-");
    var re = new RegExp("(^|\\s)" + className + "(\\s|$)");

    for(var i=0; i<elms.length; i++){
        var e = elms[i];      
        if(re.test(e.className)){
            arRslt.push(e);
        }   
    }
    return arRslt
}

//
function getElementsByClassName(elm, tagName, className){
    var arRslt = new Array();
    var elms = (tagName == "*" && elm.all)
                    ? elm.all : elm.getElementsByTagName(tagName);

    className = className.replace(/\-/g, "\\-");
    var re = new RegExp("(^|\\s)" + className + "(\\s|$)");

    for(var i=0; i<elms.length; i++){
        var e = elms[i];      
        if(re.test(e.className)){
            arRslt.push(e);
        }   
    }
    return arRslt
}


Sctiptタグが何処に埋められても問題がないように、全てのコンテントが読み込まれてから処理するようになっています。実際にはDOMContentLoadedを使っていて、Onloadで処理する場合は画像等の読み込み後のイベントになるので、それよりも早く処理が開始されてちょっと快適なハズです。

まぁこんなのまでテンプレートに書き込むのは大変なので私は外部ファイルにして、テンプレートの最後の方に書き加えています。


    </div>
    <!-- end outer-wrapper -->
    <script src='http://isawseashells.googlepages.com/RemoveExtraReadMore.js' type='text/javascript'/>
    
  </body>
</html>


これで要約設定をしていない記事に対して余計な「続きを読む」が出ることは無くなります。

多分これで「続きを読む」シリーズは完結じゃないかと思うですが、どうでしょうか???

続きを読む・・

Blogger Widgetで「続きを読む」を自動化。-- 3.2

またしても 前回書いた Blogger Widgetで「続きを読む」を自動化。-- 3.1ですが、まだ問題が残ってました・・。本当にまたしてもって感じで、これが仕事でやってたらトンデモない野郎だって事になってしまうのですが、余暇でやってる事でもあり平にお許し願いたいところです。

特にこのネタは仕事中というか休憩中にコーヒー飲んでる時にフッと思いついたのをそのままやって見たら出来ちゃった/出来たような気がしてたって物だったりするので・・・。

それで何が問題かとの話ですが、一覧表示(pageType=index or archive)時にcall="fullpost"記述がされていない、全文を表示したいような記事/要約を意識していないような記事に対しても下方に「続きを読む」が表示されてしまうという事です。

そしてこの問題の解決方法が未だに見つからない・考え付かない・・・。

何故なら、<div class="fullpost"> </div> が無い場合は「続きを読む」を表示しないようにすれば良いのですが、これが難しいというかcss的には解決方法が無いのではないかと思っています。


後はGoing(強引)なスクリプト(Javascript)で、fullpost指定がない場合は隠してしまうぐらいかと思っています。どの道テンプレートに手をいれるわけだし、その中にスクリプト埋め込んでもOKじゃないとか。

個人的には「続きを読む」が表示されてても、リンク先は記事単体のURLなんで問題はなかろうって事で放置しようかと思ってますが、どうでしょうか?

美味いコーヒーでも煎れて、ノンビリとJavascriptでも書くかなぁと思いつつも、その前にWindows Vistaへの環境移行をする時間を作らないといけないような気がしてます。でもVisual Studioがなぁ・・・・。

続きを読む・・

2007/03/03

Blogger Widgetで「続きを読む」を自動化。-- 3.1

前回書いた Blogger Widgetで「続きを読む」を自動化。-- 3ですが、一部不具合がありました。

Bloggerのヘルプを真面目に読んだ所、ページ表示状態を示す変数であるpageTypeは値として item,index,archiveの3種類があるとの事でしたが、前回のテンプレートではarchiveである時を考慮していませんでした。


このarchiveという状態は、月や週単位でのアーカイブされた記事を表示する場合に代入されてくる値ですので、以下のような設定の場合は記事は要約されていますから、「続きを読む」を表示する必要があります。
  <style type='text/css'>
    <b:if cond='data:blog.pageType == "item"'>
      .fullpost {display:block;}
      .readmore {display:none;}
    <b:else/>
      .fullpost {display:none;}
      .readmore {display:block;}
    </b:if>
  </style>


よってまずは当初のテンプレートから以下のような部分を探します。使っているテンプレートにより若干の違いがあるかと思いますが、<data:post.body/>と書いてある部分はテンプレート中に一箇所のみ必ずあるはずです。
    <div class='post-body'>
        <p><data:post.body/></p>
    </div>
    <div class='post-footer'>


この見つかった部分、つまりは<data:post.body/>直後に「続きを読む」の機能部分のコードを入れます。この例では単純な<a;>タグと文字列によるリンクを作成していますが、これは任意な方法で構いません。ポイントは通常ならばhref="****"となる代わりにexpr:href='data:post.url'とBloggerの式を利用してい部分です。
    <div class='post-body'>
      <p>
        <data:post.body/>
      </p>
      <b:if cond='data:blog.pageType != "item"'>
        <p>
          <a expr:href='data:post.url'>
           続きを読む・・
          </a>
        </p>
    </div>
    <div class='post-footer'>


前回の記事とは条件文が違っていて、pageTypeがitemではない場合には「続きを読む」を表示するという条件になっています。

本来ならばこれらを組み込んでテンプレートとして提供できれば良いのでしょうが、私にはデザインセンスがないので・・・。

続きを読む・・

2007/03/02

Blogger Widgetで「続きを読む」を自動化。-- 3

Bloggerでのトップページ等で、複数記事を表示している場合に「続きを読む」リンクを付けて要約(記事の冒頭部分)のみを表示する機能に関して、あれやこれやとJavascriptを使って後加工で強引に自己満足な機能拡張をしてきましたが、どうやらMore Betterな回答が得られたようです。

結論から書きますと、WidgetでJavascriptなんて使わずにTemplateで対応するのが良さそうというか、手間も自由度も高いです。既にこの記事を書いている段階で適応済みですが、前回の記事の時と出力されるHTMLには際がないので、これを読んでいる方には何が変わったのかわからないかと思います。

ちなみに、「この続きを読む」に機能の基本は、クリボウさんのページとかEnvyさんページを参考にして下さい。

結果としては無駄になったJavascriptなコードでしたが、その作成過程で色々なテンプレートを眺めたりした事が功を奏したようで、新BloggerのTemplateに対しての理解が随分と深まりました。まだBlogger Templateのマニュアルとかドキュメントは読んで無いってあたりがアレですが・・。

今回私がテンプレートに対して加えた変更は以下のような感じです。(着色部分)

テンプレートをHTML(XML)で直接編集してコードを書き加えています。全てのテンプレートが同じ要素を同様に表現しているとは限らないので、私とまったく同じやり方で対応できるとは限りませんが、それなりに参考にはなるかと思います。

ポイントはテンプレートの中から<div class='post-body'>を探して、その次に<p><data:post.body/></p>とかpost-bodyの出力を指示している部分を探し、その次の部分に「続きを読む」のリンクを追加する事です。その際に記事が単体で表示されている時を考慮して、blog.pageTypetがindexの時のみに追加する様に条件文(if文)も加えます。

「続きを読む・・」の表示方法自体は普通のHTML構文ですから文言を変えたり、画像を使ったりも問題なく可能です。

また以前までの方法で記事中に<div class="readmore">なタグを書き込んでいた方は、テンプレートでのstyle指定でそちらを隠す事で二重に表示される事を防ぐ事ができるかと思います。

変更の手順は以下のような感じです。テンプレートの編集はやや難易度が高いというか失敗すると困るので事前の保存は欠かさずに。


以上のような感じて結果としてBloggerの機能で対応出来たのですが、これにしても何処かにドキュメントとかあってそれを見逃してる・見つけられなかっただけなんだろうなとか思っています・・・・。

続きを読む・・

2007/03/01

Bloggerに「関連記事リスト」を。

Read Moreな機能は大体片付いたんですが、Documentationがまだ残ってます。やった事は記録に残そうとは心がけているのですが、次なる創作意欲、むしろ誘惑に負けて「関連記事リスト」を記事の後ろに挿入するコードを書いてみました。

この機能は既に稼動中なんですが、例によってデザインセンスが欠如してますから取り敢えず列挙しましたって感じです。ちなみに複数記事が表示されている時は動かないようにしてあります

何をもって関連がある記事とするのかって大きな問題があるのですが、とりあえず記事に設定されたラベルを元に、そのラベルの一致している数が多く、そして更新日時の新しい記事って順序で表示しています。

具体的にはBloggerのFeedをラベル別にGData APIを介して取り込み、それを上記の条件で並べ直して列挙しています。

詳細に関しては、もう少しデザインとか汎用性を高めてから書きたいと思いますが、気になる方はこのページなりJavascriptなファイルなりを参照して下さい。

今一番不安なのは、苦労して車輪を再発明しまくってるだけじゃないかって事・・・・。

続きを読む・・