2008年7月25日金曜日

musu-bi.jp

いつも割りのいいバイトをさせてくださっているドサナイテさんのお仕事で
インファントマッサージをしているむすびというお店のサイトのコーディングをしました。

今回(俺はそこまですごいとは思っちゃいないのですが)好評だったのは、エントリのプライマリカテゴリが合体することで、どこのメニューからたどった情報なのかが分かる、という機能。
この仕組みが発生したいきさつはこんな感じ
「デザイナーさんがPDFを送ってくる」

「俺が『なんかツマンナイデザインだな…』という様な事を言う」

「デザイナーさんが『じゃあこれでどうだゴルァ』と、コーディングが難しそうな課題を出してくる」

「俺が『ほほう、やってやろうじゃねえか!』と実装」

本当はこんなけんか腰じゃないけど、だいたいこんな感じ。


さてさてこのブログは別に日記を書いたり被リンクを稼いだりするのが目的ではなく
技術系の情報共有が目的なので、こいつの実装方法を書こうというわけ。

まずこのブログの仕様から
  • システムはMovable Type 3.35
  • PHP4で拡張子もphpに変更済み
  • 左のメニューはカテゴリからの自動生成
で、CSSで実装するためにメニューのli要素に必要なClassは
  • 現在のカテゴリを示す部分にはcurrent
  • 一番上で、現在のカテゴリを示す部分にはさらにcurrentTop
この2つだけ。あとはCSSをがんばって書けば何とかなる。

じゃあどうやって実装してるかというと
MTSubCategoriesでカテゴリ一覧表示しているので、MTSubCatIsFirstとMTElseを使うとカテゴリが一番上か一番上で無いかの条件分岐が出来る。
でもって、各アーカイブであらかじめPHP上の変数にMTCategoryLabelあたりを保存するようにしておけば
幸いメニューはソースコード上、その後に来るのでPHPのif文で分岐すれば完成。

0 件のコメント: