帰ってきたNucleus

静的ページにブログの新着記事の一覧を表示させる

例えば、静的ページ(.html)のみで運営しているサイトがあったとします。ある日ブログを始めようと思い、「blog」というディレクトリを作ってそこへNucleusをインストールしました。

そうなると、トップページの「index.html」上にブログの新着記事タイトルの一覧を表示できないかという要望が出てくるのは必然です。プログラマーであればPerlやPHPでRSSリーダーを作り、取得したデータをJavascriptで表示させるという方法がありますが、一般の人には難易度が高いです。

こういった場合にはRSSリーダーを使わなくても、同じサイト内にブログがあるのならSSIスペシャルスキンパーツを使って簡単に一覧を表示させる事ができます(※SSIと.htaccessが許可されていないサーバーでは不可)。ただブログと静的ページの文字コードが違うと文字化けしてしまいます。

デモを見る

.htaccess

まずはindex.htmlと同じ階層に「.htaccess」を設置し、index.html上でSSIが動作するように設定します。

AddHandler server-parsed html


テンプレート(top/itemlist)

次に一覧表示用のテンプレートを作ります。


  • <%date%> <%title%>
  • %Y/%m/%d


    スペシャルスキンパーツ(Topics)

    スキン編集画面でスペシャルスキンパーツを追加し、出力部分を完成させます。既定のBlog以外を表示させたい場合は<%blog()%>ではなく<%otherblog()%>を使います。

      <%blog(top/itemlist,10)%>


    index.html

    最後にSSIを使ってindex.html内にスペシャルスキンパーツをインクルードします。うまく動作しない場合は他のコマンドを試してみたり、パスを確認したりしてみてください。