以下の内容はhttp://yarumo.blog83.fc2.com/blog-entry-1282.htmlより取得しました。


当ブログで作成したFC2専用スクリプトです。
前回設定した関連カテゴリと、現在表示中のカテゴリ内記事一覧を表示します。

JKL.ParseXML を使用して、非同期にRSSファイルからリストを取得します。
カテゴリ内の記事数が、RSSの最大記事数以下でないと正しく動作しません。

Firefox 3.6.3、IE7 で動作確認しています。
実際の動作は、当ブログでご確認ください。

テンプレートのバックアップを必ずとってから編集してください。
設置は自己責任でお願いします。

編集中テンプレートの確認方法は、以下のページが参考になります。
http://crazymoon.blog3.fc2.com/blog-entry-68.html



設置手順


1.前回貼付けた <!--yaruo-pages ここまで---> の下に、以下の行を貼付けます。

------貼付け位置 この下の行から------

<script type="text/javascript"><!--

  function chkCategoryGrp(cCatno) {
    var grpos=0;
    for(i=0;i<yrmcategoryGroup.length;i++){
      for(j=0;j<yrmcategoryGroup[i].length;j++){
        if(cCatno==yrmcategoryGroup[i][j]){
          grpos=i;
          break;
        }
      }
      if(grpos>0){
        break;
      }
    }
    return grpos;
  };

  function setAncInf(link, title, pkbn) {
    var tmp = new Array;
    tmp[0] = getanc(link, title);
    tmp[1] = link;
    tmp[2] = title;
    tmp[3] = pkbn;
    return tmp;
  }

  function getCategoryList(cCatno, cCatlink, cCattitle) {
    var grpos=0;
    grpos=chkCategoryGrp(cCatno);

    var anclist = new Array;
    var ancpos = 0;
    if(grpos==0) {
      var tmp = new Array;
      tmp = setAncInf(cCatlink, cCattitle, 1);
      anclist[0] = tmp;
    } else {
      for(i=0;i<yrmcategoryGroup[grpos].length;i++){
      <!--category-->
      var chkno=<%category_no> + "";
        if(chkno==yrmcategoryGroup[grpos][i]){
          var pkbn=0;
          if(cCatno==chkno){
            pkbn=1;
          }
          var tmp = new Array;
          tmp = setAncInf('<%category_link>', '<%category_name>', pkbn);
          anclist[ancpos] = tmp;
          ancpos++;
        }
      <!--/category-->
      }
    }

    return anclist;
  }

function dispListArea(category, entryno){
    document.write("<br>");
    document.write("<p><table width=\"95%\" border=0 cellspacing=0 cellpadding=0 align=\"center\"><tr bgcolor=\"#999999\"><td><table width=\"100%\" border=0 cellspacing=1 cellpadding=10><tr bgcolor=\"#F5F5F5\"><td style=\"line-height:25px;font-size:10pt;\"> 関連カテゴリ","<span id=\"c", entryno, "\" class=\"contents_body\">Loading......</span> ",category," 記事一覧<span id=\"", entryno, "\"class=\"contents_body\">Loading......</span></td></tr></table></td></tr></table><br></p>");
}

//--></script>

------貼付け位置 この上の行まで------


2.前回貼り付けた設定エリアを編集します。

 ・表示部ID設定
  カテゴリ一覧、記事一覧を表示するエリアのIDを設定します。
  標準では、記事番号を使用しています。
  他のスクリプトで、記事番号をIDとして使用している場合、
  記事一覧表示部IDの後ろの "" の中に適当な文字を追加してください。

  objidGroup[0] = entryno + "";      // 記事一覧表示部ID

   変更例)
   objidGroup[0] = entryno + "_yarumo";      // 記事一覧表示部ID


 ・現在表示中のカテゴリ・記事の表示設定
  現在表示中の記事、カテゴリの表示方法を指定します。

  var currentlink = 1;   // 0:リンク無し 1:リンクあり
  var currenttype = 1;   // 0:標準 1:太字<b> 2:斜字<i> 3:太字&斜字


 ・記事一覧の形式
  カテゴリ一覧、記事一覧の先頭に表示される記号を指定します。
  文字は ' 'で括ってください。

  var listtype = '0';    //0:数字 d:黒丸 c:白丸 s:四角


3.記事一覧を表示するエリアを、テンプレートに貼りつけます。

  記事一覧表示部IDを変更していた場合、赤字の箇所を修正してください。

   変更例)記事一覧<span id="<%topentry_no>_yarumo" class="contents_body">

  記事タイトルの上か下に、記事一覧を表示するエリアを貼りつけます。
  具体的な場所は、テンプレートにより異なりますので、それらしい箇所を見つけます。
  だいたい、以下のように記述されているかと思います。

    <a href="<%topentry_link>" title="<%topentry_title>"><%topentry_title></a>


------貼付け位置 この下の行から------

      <!--permanent_area-->
      <p><table width="95%" border=0 cellspacing=0 cellpadding=0 align="center"><tr bgcolor="#999999"><td><table width="100%" border=0 cellspacing=1 cellpadding=10><tr bgcolor="#F5F5F5"><td style="line-height:25px;font-size:10pt;"> 関連カテゴリ<span id="c<%topentry_no>">Loading......</span> <%topentry_category> 記事一覧<span id="<%topentry_no>">Loading......</span></td></tr></table></td></tr></table><br> <br> </p>
<script type="text/javascript"><!--
  //リスト表示
  var anclist = new Array;
  anclist =getCategoryList('<%topentry_category_no>' ,
                           '<%topentry_category_link>' ,
                           '<%topentry_category>');

  var cListId = "c" + "<%topentry_no>";
  var container = document.getElementById(cListId);
  var ol = document.createElement("ol");
  var yaruopages = yaruoPageDispInit('<%url>', '<%topentry_category_no>', '<%topentry_no>');
  for(i=0;i<anclist.length;i++){
    var li = document.createElement("li");
    var a = yaruogetanc(anclist[i], yaruopages.param);
    li.appendChild(a);
    ol.appendChild(li);
  }
  ol.style.listStyle=yaruopages.getlisttype();
  container.appendChild(ol);
  yaruodisp(cListId, container);

  yaruoPageDisp('<%url>', '<%topentry_category_no>', '<%topentry_no>');
//--></script>
      <!--/permanent_area-->

------貼付け位置 この上の行まで------


4.その他

設置に関する質問等は、メールフォームか、掲示板でお願いします。

コメント欄は使用しないでください。

まとめ記事に対するコメントを優先したいため、当記事に対するコメントは基本的に削除します。

ご了承ください。



スポンサーサイト




 

NEXT    PREV
««     »»


2009/09/01 00:01 | おしらせCOMMENT(0)TRACKBACK(0)PageTopカテゴリ&記事一覧

«« 「01:やる夫がプラモデルを作るようです ~まずは道具をそろえよう!~」   | BLOG TOP |  「前ページ・次ページリンク表示スクリプト」 »»

コメント

コメントの投稿