[↑PageTop]
«
»
ブログ検索 タグ検索
申し訳ありません。 該当する記事は削除、又は、公開中止の可能性があります。
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Comment

Post

管理者にだけ表示を許可する

FC2ブログには、関連エントリーを表示する機能が有りません。
ネットを色々見てみると、そんなFC2ブログに、関連エントリーを表示しちゃう素敵なサービスも有るのですが、どうしても広告が表示されしまって、それが気になるFerioです。

少し前に、導入した、「関連エントリー」っぽい何かについての記録がなかったので、自分が忘れないようにメモ。


関連エントリーっぽい と言っているように、実際は同じカテゴリーの属する記事のRSSから情報を取得して表示しているだけです。これでも、無いよりは随分ましです。

今回は、Kawa.netさんのJAVASCRIPTのライブラリを使用させていただきました。
jkl-parsexml.js : JKL.ParseXML/ajax通信処理ライブラリ
サーバ上の XML 形式ファイルをダウンロード~解析して、 JavaScript オブジェクト(配列やマップ)に変換するライブラリ

jkl-hina.js : テンプレート展開クラス
HTML ページ内に予め用意したテンプレート、データを与えて、テンプレートへの展開処理を高速に行うライブラリ

この2つを使わせていただきました。


まずは、ダウンロード。
 上記のページにそれぞれコードがおいてありますので、ダウンロードして自分のブログに、「jkl-parsexml.js」 と、「jkl-hina.js」を、アップロードしておいてください。

次に、下記のソースをテンプレートの、関連エントリーが表示したい部分に追加。
<!-- 関連エントリー 開始 -->
<!--permanent_area-->
<script type="text/javascript" src="http://blog-imgs-24.fc2.com/f/e/r/ferio68k/※1jkl-parsexml.js" charset="euc-jp"></script>
<script type="text/javascript" src="http://blog-imgs-24.fc2.com/f/e/r/ferio68k/※1jkl-hina.js" charset="euc-jp"></script>

<script><!--
window.onload = function () {
var url = "http://ferio68k.blog71.fc2.com/※2?xml&category=<%topentry_category_no>";
var http = new JKL.ParseXML( url );
var func = function ( data ) {
var hina = new JKL.Hina( "rssbox" );
var dest = hina.expand( data, "rssbox" );
dest.style.display = "";
};
http.async( func );
http.parse();
}
// --></script>
<br>
<div class="kanrenbox">
<h3><a href="<%topentry_category_link>">【<%topentry_category>】 関連エントリー</a></h3>
<div id="rssbox" style="display: none;">
<ul>
<li title="@foreach item1 [/rdf:RDF/item]"><a _href="[/item1/link]">[/item1/title]</a></li>
</ul>
</div>
</div>
※3
<!--/permanent_area-->
<!-- 関連エントリー 終了 -->
※1 自分のファイルアップローダーのアドレスに合わせてください。
※2 自分のブログのアドレスに合わせてください。
※3 ひな形

以上で、関連エントリーもどきが、表示できます。
タグの解析など、一切していない、カテゴリーのRSS垂れ流しな訳ですから、多大な期待をしてはいけません。


ひな形のカスタマイズのために。
オレンジ色で示した部分が、変数展開前のひな形の部分です。
<li title="@foreach item1 [/rdf:RDF/item]"><a _href="[/item1/link]">[/item1/title]</a></li>
この1行が、RSSの1項目毎に繰り返されます。

細かい説明は面倒なのでしませんので、気になる人は自分で調べてください。
ヒント1:非同期モード : ヒント2:@foreach 制御構文 : ヒント3:RSSの要素と構文


カスタマイズに使える項目だけを、書いてお行きます。

jkl-parsexml.js が展開して、取り込んだ配列は下記のものが使えるはずです。
[/item1/link]   関連記事のアドレス
[/item1/title]   関連記事のタイトル
[/item1/description]   関連記事の要約
[/item1/content:encoded]   関連記事の記事(一部 or 全文 ブログの設定による)
[/item1/dc:subject]   関連記事のカテゴリー
[/item1/dc:date]   関連記事の日時
[/item1/dc:creator]   ブログオーナーの名前
[/item1/dc:publisher]   組織名(FC2-BLOG)

<%topentry_category_link>など、<%で始まる、FC2ブログが展開する変数は、テンプレート中に使える変数一覧 で調べてください。
関連記事

Comment

Post

管理者にだけ表示を許可する


HOME : TOP

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。