ウェブサイトとブログのややこしい関係

超久々に、MTOSとガッツリ格闘しています。

職場の方で、年末年始の作業が一段落し、本格的に某サイトの再構築に取り掛かっているのです。

以前はずーっとMT4.xでサイトを組んでいたので、5.xになって最上位にウェブサイトがあり、そこにブログが紐付いているという感覚がまだしっくりきていませんでした(超・今更ですが)。

なので、まずはナビゲーションバーを作るので四苦八苦。

というか、タイトル部分に一番親のウェブサイトトップページをリンクさせ、さらにそのすぐ下にグローバルナビゲーションバーを置く、たったこれだけでもう大変でした。

何しろ、「mt:Websites」と「mt:BlogParentWebsite」の違いも分からなかったので。

あ、当然ですがこのナビゲーションバーはモジュールにして共通化しています。できればグローバルテンプレートにしたかったのですが、条件分岐がかえってややこしそうだったので、すべてウェブサイトに置いて、そこから「mt:include」で引っ張ってくることにしました。

ただ、そのナビゲーションバーで、現在いる場所のボタンは表示を変えるようにしたかったのでまた苦労しました。例えばウェブサイトトップにいるときは「HOME」ボタンの色が変わる、という感じです。

最初はモジュールそのものを「mt:BlogParentWebsite」でくくってしまったので、子ブログのトップに行ってもここが変わってしまい往生しました。

最終的には、「mt:BlogID」を使うことと、「mt:BlogParentWebsite」を必要最低限の部分で使うことで解決しました。

いろいろ悩んだのですが、結局のところ、ブログを指定してやればウェブサイトでも通用するけれど、逆はダメということのようです。

実はそこからドロップダウンにしてサブメニューも出したいのですが、まだそこにたどり着きません。

とりあえず、大きな項目をそれぞれのブログにして、最初のブログ構築にようやく入りました。

と思ったら、これはMTOSなので純正のカスタムフィールドは使えないんですね。ここでようやく、ずっと以前に入手した藤本 壱さんのプラグインの出番です。

これはこれで手ごわそうなので、また日を改めて頑張ってみます。

CSSでドロップダウンメニュー

MTOSでのサイト作りがなかなか進みません。

ライセンス版のMT4では、デフォルトでトップ画像下にナビゲーションバーのあるウェブサイトテーマが入っていたのですが、MTOS5にはありません。

無料テーマをいろいろ探しているのですが、ウェブサイト用テーマとなると、なかなか「これ」というものが見つからず、良いものはそれなりの価格だったりして、悩ましいです。

何しろ、お金の取れないサイト作りなので…。労力はある程度かけても、あまりお金はかけたくないんですよねぇ。(時間がかかる方が実はコストが高いのかもしれませんが。)

こうなったら、自分でガシガシとHTMLやCSSを書いていくしかないんでしょうねぇ。

幸い、ありがたいことにサンプルソースを公開してくださっている方がWeb上にたくさんいらっしゃいますので、自分の希望に近いものを拝借して、あとはカスタマイズしていくのが良いのかな、と思っています。

とりあえず、今ほしいのはドロップダウンメニューつきナビゲーションバー
できればCSSだけで実装したいと思っています。

検索するといろいろ出てきますが、こちらの解説がわかりやすかったので参考にさせていただきます。

 ezorisu-web » CSSでドロップダウンメニュー

ただひとつだけ、これがなかなか見つからないのですが、該当ページにいるときはそのメニューの色が変わるようにしたいんですよね。

ライセンス版MT4では、条件分岐でクラスに”on”と”off”をつけることで実装していたのですが、今ソースを見てもかなりややこしくて解読に苦労しています。

うまく解読できたら、今度のサイトでも実装してみたいと思います。