やまでら くみこ のレシピ

テレビで話題の人気レシピをメインに紹介しています。

カテゴリ別の最新記事一覧をライブドアブログのサイドバーに表示する方法

投稿日:2013年1月18日 更新日:

3448606172_bd3a1607ec
今回は、ライブドアブログのサイドバーにカテゴリ別の最新記事を一覧表示する方法をご紹介します。

例えば、いま表示されている記事が料理レシピだとしたら、サイドバーには料理記事の一覧がずらっと並ぶイメージです。もしかすると、一覧を見た読者がもう一本記事を読んでくれるかもしれません。

やり方としては、XML形式で公開されているカテゴリ別最新記事一覧をjqueryで加工して表示するというものです。そう聞くととてもムズカシそうですが、実際はコピーして貼り付けるだけなので、意外とカンタンです。

jqueryライブラリを読み込む

まずは、jqueryライブラリを読み込みます。具体的には、「ブログ設定」>「デザイン/ブログパーツ設定」>「カスタムJS」>「head内」に次の一行を追記します。

<script type="text/javascript" src="http://parts.blog.livedoor.jp/js/jquery.js"></script>

ブログパーツを記述する

続いて、ブログパーツを記述します。「ブログ設定」>「デザイン/ブログパーツ設定」>「ブログパーツ」で「フリーエリア」を追加して、以下のコードを貼り付けます。

ブログパーツの「ラベル」は適当で構いません。「改行設定」は「変換しない」、「タイトル設定」は「ブログパーツタイトルを表示しない」にそれぞれチェックを入れてください。

<div class="sidewrapper" id="article_list"></div>
<script type="text/javascript">
// ————————————————-
// XML読み込み
// ————————————————-
function xmlLoad(xmlurl){
  $.ajax({
    url:xmlurl,
    type:'get',
    dataType:'xml',
    timeout:1000,
    success:parse_xml
  });
}

// ————————————————-
// XMLデータを取得
// ————————————————-
function parse_xml(xml,status){
  if(status!='success')return;
  $(xml).find('item').each(disp);
}

// ————————————————-
// HTML生成関数
// ————————————————-
function disp(){

  //各要素を変数に格納
  var $title = $(this).find('title').text();
  var $link = $(this).find('link').text();

  //HTMLを生成
  $('<div class="sidebody"><a href="'+$link+'">'+$title+'</a></div>').appendTo('#article_list');
}

// ————————————————-
//関数実行
// ————————————————-
$(function(){
  //トップページ
  if(ld_blog_vars.current_page.type=="index"){
    $('<div class="sidetitlebody"><div class="sidetitle">最新記事</div></div>').appendTo('#article_list');
    xmlLoad(ld_blog_vars.url+'index.rdf');

  //個別記事
  }else if(ld_blog_vars.current_page.type=="article"){
    $('<div class="sidetitlebody"><div class="sidetitle">最新記事 ('+ld_blog_vars.articles[0].categories[0].name+')</div></div>').appendTo('#article_list');
    xmlLoad(ld_blog_vars.url+'archives/cat_'+ld_blog_vars.articles[0].categories[0].id+'.xml');

  //カテゴリアーカイブ
  }else if(ld_blog_vars.current_page.type=="category"){
    $('<div class="sidetitlebody"><div class="sidetitle">最新記事 ('+ld_blog_vars.current_page.name+')</div></div>').appendTo('#article_list');
    xmlLoad(ld_blog_vars.url+'archives/cat_'+ld_blog_vars.current_page.category+'.xml');
  }
});
</script>

参考資料: 独学Webデザイナーの覚書

おすすめ記事

【文字数カウント】いちどに複数の文章をチェックできるWebアプリ。

文字数カウンター/文字数チェッカーを作りましたので、サイト運営に役立て…

「ヘロンの公式」計算機。三角形の面積と高さを、3辺の長さから計算します。

「ヘロンの公式」計算機は、三角形の面積と高さをWeb上でカンタンに計算…

台形の面積 計算機。基本公式と高さが分からないときの求め方。

「台形の面積」計算機は、台形の面積をWeb上でカンタンに計算できる電卓…

写真の位置情報を確認するツール「Exif-GPS」。iPhone、Android、PC対応。

「Exif-GPS」は、iPhoneやAndroidなどのスマホで撮っ…

Macでデスクトップを表示する2つの方法。キーボードショートカットとトラックパッドで簡単操作。

マックでデスクトップ画面を表示する方法をご紹介します。 ウィンドウズな…

wordpress

WordPressをブルートフォースアタックから守るために、最低限やっておきたい.htaccessの設定

世界中で頻発する、WordPressを狙った不正なアタック。 その手口…