2004年09月 12日
MT アーカイブ連動カレンダー テンプレート
月間移動可能なカレンダーはすでに提案されているのですが、カレンダーでそのまま Archive をブラウズできる方が僕的にはうれしいなぁ~と。で、作ってみました。
このサイト左上にあるカレンダーがそのサンプルなんですが、今表示している Entry 郡の月別アーカイブへリンクされています。前月・次月アーカイブへもリンクされています。これを各日別・月別アーカイブに載せれば、閲覧している人がカレンダーを使って各アーカイブを自由にブラウズできるようになるってわけです。
Data Based Archive テンプレートに下記を追加することで実現できます。スタイルシート等は各サイトによって違うと思いますので適宜改変くださいませ。ちなみにこの色で表示されたところが主に必要な部分です。Data Based Archive でカレンダーを付けるための工夫も入っています。
<!-- カレンダー -->
<div class="sidetitle">
Calendar
</div>
<div align="center" class="calendar">
<table width="160" border="0" cellspacing="2" cellpadding="0"
summary="Monthly calendar with links to each day's posts">
<caption class="calendarhead" >
<MTArchivePrevious archive_type="Monthly">
<a href="<$MTArchiveLink$>">«</a>
</MTArchivePrevious>
<a href="<$MTArchiveLink archive_type="Monthly"$>">
<$MTEntryDate format="%B %Y"$></a>
<MTArchiveNext archive_type="Monthly">
<a href="<$MTArchiveLink$>">»</a>
</MTArchiveNext>
</caption>
<tr>
<th abbr="Sunday" align="center">
<span class="calendar" >
<font color="#990000">Su</font></span></th>
<th abbr="Monday" align="center">
<span class="calendar" >Mo</span></th>
<th abbr="Tuesday" align="center">
<span class="calendar" >Tu</span></th>
<th abbr="Wednesday" align="center">
<span class="calendar" >We</span></th>
<th abbr="Thursday" align="center">
<span class="calendar" >Th</span></th>
<th abbr="Friday" align="center">
<span class="calendar" >Fr</span></th>
<th abbr="Saturday" align="center">
<span class="calendar" >
<font color="#0033CC">Sa</font></span></th>
</tr>
<MTCalendar month="this">
<MTCalendarWeekHeader>
<tr>
</MTCalendarWeekHeader>
<td align="center"><span class="calendar" >
<MTCalendarIfEntries>
<MTEntries lastn="1">
<a href="<$MTEntryLink archive_type="Daily"$>"
title="Last entry is[<$MTEntryTitle$>]">
<b><$MTCalendarDay$></b></a>
</MTEntries>
</MTCalendarIfEntries>
<MTCalendarIfNoEntries><$MTCalendarDay$>
</MTCalendarIfNoEntries>
<MTCalendarIfBlank> </MTCalendarIfBlank></span>
</td>
<MTCalendarWeekFooter>
</tr>
</MTCalendarWeekFooter>
</MTCalendar>
</table>
</div>
Main Index のテンプレートはちょっと書き方を変えなければいけません。続きに示すようにしてください。
<!-- カレンダー -->
<div class="sidetitle">
Calendar
</div>
<div align="center" class="calendar">
<table width="160" border="0" cellspacing="2" cellpadding="0"
summary="Monthly calendar with links to each day's posts">
<MTArchiveList archive_type="Monthly" lastn="1">
<caption class="calendarhead" >
<MTArchivePrevious>
<a href="<$MTArchiveLink$>">«</a>
</MTArchivePrevious>
<a href="<$MTArchiveLink$>">
<$MTDate format="%B %Y"$></a>
</caption>
</MTArchiveList>
<tr>
<th abbr="Sunday" align="center">
<span class="calendar" >
<font color="#990000">Su</font></span></th>
<th abbr="Monday" align="center">
<span class="calendar" >Mo</span></th>
<th abbr="Tuesday" align="center">
<span class="calendar" >Tu</span></th>
<th abbr="Wednesday" align="center">
<span class="calendar" >We</span></th>
<th abbr="Thursday" align="center">
<span class="calendar" >Th</span></th>
<th abbr="Friday" align="center">
<span class="calendar" >Fr</span></th>
<th abbr="Saturday" align="center">
<span class="calendar" >
<font color="#0033CC">Sa</font></span></th>
</tr>
<MTCalendar>
<MTCalendarWeekHeader>
<tr>
</MTCalendarWeekHeader>
<td align="center"><span class="calendar" >
<MTCalendarIfEntries>
<MTEntries lastn="1">
<a href="<$MTEntryLink archive_type="Daily"$>"
title="Last entry is[<$MTEntryTitle$>]">
<b><$MTCalendarDay$></b></a>
</MTEntries>
</MTCalendarIfEntries>
<MTCalendarIfNoEntries><$MTCalendarDay$>
</MTCalendarIfNoEntries>
<MTCalendarIfBlank> </MTCalendarIfBlank></span>
</td>
<MTCalendarWeekFooter>
</tr>
</MTCalendarWeekFooter>
</MTCalendar>
</table>
</div>
上級技として
ここまで作ると Individual Entry Archive テンプレート(個別の Entry)にもカレンダーを載せたくなるのですが、まっとうな方法では実装できません。各アーカイブへの URL が Data-Based Archive 以外では生成できないからです。上級技として実装の指針も書いてみます。
- カレンダーだけを自動生成する新しいアーカイブテンプレートを作成する。
- ウェブログの設定 → アーカイブの設定で、「月別」として登録。
- 生成 file 名を calender_<$MTArchiveDate format="%Y_%m"$>.html などとする。
- PHP の include か、MTInclude を使ってcalender_<$MTArchiveDate format="%Y_%m"$>.html を各 Individual Entry Archive から読み込むようにする。
個人的な見解ですが、iframe タグを使って読み込む方法は IE 以外のブラウザでは不具合を起こすため、あまりお勧めできません…が、そのあたりを開き直れるのであれば。なお、これらの検討は以下のエントリーに詳しく書いてありましたのでご参考まで。
nlog(n): カレンダーを MTInclude するには
事後避妊の方法
いや、この質問自体はわけわからんのですがw 回答の URL でびっくりしたのです。
セックス後、5日以内に銅付加IUDを挿入することで、
受精卵の着床を妨げる緊急避妊法があります。
避妊に失敗した、暴力でセックスを強要された場合など、
早めにお医者様に相談しましょう。
こんな事後避妊手法があったとは。女性にとって、すごく重要なことではないですか?IUD と言う手法自体は報道番組で見たことあって。子宮へ繋がる管をリングでふさいじゃうんですよね。世界的に見ると避妊は女性の責任で、と言うお国もあって、そこでは女性のほとんどがこの治療を行うんだとか。そう考えると、リスクはそうそう高くない方法なんだろうなぁ、と素人ながら。
MS 執行役員 古川氏の blog
古川氏のブログなんてあったんですね。もしかすると閲覧には .NET PASSPORT が必要かも。かの古川さん(敢えて恐れず「さん付け」)、Micorosft K.K. の有名人ですが、去年 ロスで行われた Microsoft Developper Confirence で偶然お見かけして。実は大学時代、研究室でお会いしたことがあったのです。それで、自分のことなど覚えてはいないだろう、と思ってはいたのですが、思い切って声をかけてみたのでした。いや、もちろん、多忙な方ですから覚えていらっしゃいませんでしたがw 気さくにお話してもらえたのが印象的でした。こっちは極度に緊張しまくってまして何はなしたのか良く覚えてなかったりしますがw さすがにトップに座る人は度量が広いなー、なんて思ったわけで。
会社にいる MS から移ってきた同僚曰く、古川さんはプレゼンテーションの素晴らしい人だ、と。最高技術責任者の肩書きも然ることながら実は文系の方なんですよね。今の自分を見て、小さくまとまってちゃいかんなーなんて思います。











