カレンダー代用 ナビ付月別アーカイブ

※白背景部分の ソース等は ここ(Web上) で直接編集できます。 (IE,Firefox,Opera,Google Chrome 等 対応)

1. テンプレートの <head> ~ </head> 部分

<style type="text/css">
a.da_<%now_year><%now_month> { color:#fff; }
li a.da_<%now_year><%now_month> { color:#fff; } /* スクリプトOFF用 */
#hs-archives td a.da_<%now_year><%now_month> { background:#6699cc; }
</style>

2. <body> 内の表示したい部分に ↓以下を記入

<div id="hs-archives"><ul>
<!--archive-->
<li><a href="<%archive_link>" title="<%archive_year>年<%archive_month>月" class="da_<%archive_year><%archive_month>"><%archive_year>年<%archive_month>月 (<%archive_count>)</a>
</li>
<!--/archive-->
</ul></div>

<!--
HS月別アーカイブ V1.00 by おさる@FC2 2008.08.15
Copyright (c) 2008-2009, おさる@FC2 (veefour). All Rights Reserved.
http://mnkpc.blog92.fc2.com/blog-entry-77.html
-->
<script type="text/javascript">
// <![CDATA[
function mnkCreateArchives(idName){
var rows = 2; //★年毎の行数
var cols = Math.floor(12/rows);
if(cols*rows!=12){ return; } // parameter check
var target = this.document.getElementById(idName);
var links = target.getElementsByTagName('a');
var dt = new Array();
var i, j = -1, cury = 0;
for(i=0; i<links.length; i++){
links[i].innerHTML.match(/(¥d+)¥D+(¥d+)¥D+(¥d+)/);
if(cury!=RegExp.$1){
cury = RegExp.$1;
dt[++j] = new Array(cury,'01','02','03','04','05','06','07','08','09','10','11','12');
}
var mon = Number(RegExp.$2);
dt[j][mon] = '<a href="' + links[i].href + '" title="' + links[i].innerHTML + '" class="' + links[i].className + '">' + dt[j][mon] + '</a>';
}
var rec = '<table width="100%">';
var sep = '';
for(i=dt.length-1;i>=0;i--){
rec += '<tr><th colspan="' + cols + '">' + sep + dt[i][0] + '年</th></tr>';
for(var r=0; r<rows; r++){
rec += '<tr>';
for(j=1; j<=cols; j++){ rec += '<td>' + dt[i][j+r*cols] + '</td>'; }
rec += '</tr>';
}
sep = '<div></div>';
}
rec += '</table>';
target.innerHTML = rec;
return;
}
mnkCreateArchives('hs-archives');
// ]]>
</script>

3. スタイルシート に ↓以下を記入

/* HS月別アーカイブ */
#hs-archives th {
font-weight:bold;
}
#hs-archives td {
border-top:solid 1px #f5f5f5;
border-right:solid 1px #ccc;
border-bottom:solid 1px #ccc;
border-left:solid 1px #f5f5f5;
line-height:1.3;
text-align:center;
background:#f5f5f5;
color:#999;
}
#hs-archives td a {
display:block;
background:#fefefe;
}

© ありのごとくあつまりて http://arinogotokuatumarite.blog19.fc2.com/