ta-kumi

StyleCatcherを使ったカラムの切替

0

管理画面のスタイルメニューからレイアウトの選択を使ってレイアウトを切り替える仕組みを作ろうとしています。
mt-static/themes内にフォルダを作ってscreen.cssを入れました。同ファイルにlayouts:としてクラスを記述することで、独自に作成したスタイルを適応させるところまではできました(body class="layout-***"といった感じで)。
ただ、2カラムと3カラムの切替がうまくできません(3カラムレイアウトに切り替わったときに#gammaがでてこない)。デフォルトで用意されているlayout-wttやlayout-wtの場合は切替が可能なのですが、新規に作成したスタイルではカラムの切替がうまくいかないのです。この場合、カラムの切替はどこで指定すればいいのでしょうか?
おそらくplugins/StyleCatcher/lib/StyleCatcher/CMS.pmあたりをいじくるのではないかと見ているのですが...。

返信(7)

| 返信する
  • >ta-kumiさん
    説明を省略してすいませんが、新規に作成したスタイルの適用方法については、当ブログで配布しているテーマをダウンロードしてください。
    http://www.koikikukan.com/template.php

  • >ta-kumiさん
    こんにちは。

    拙著「Movable Type 5 Webサイト制作ガイドVolume 2」の中で、テーマをスタイルキャッチャーに対応させる方法を詳細に解説しています。
    カラムの切り替えについても解説しています。

    http://www.h-fj.com/blog/mt5bookvol2/

  • お二方がおっしゃってるように、StyleCatcherに関する情報は、書籍なりウェブ上でなり、いっぱいあります。かなり古い機能なので、情報はたくさんありますよ。一度お探しになってみてはどうでしょう。
    かく言う私も以前に、MT5でのスタイルキャッチャーについて、記事を書きました。

  • > 拙著「Movable Type 5 Webサイト制作ガイドVolume 2」の中で、テーマをスタイルキャッチャーに対応させる方法を詳細に解説しています。

    まさにやりたかったことが書いてあり、ただ今試行錯誤しながらやってます。
    ですが、独自のクラスを定義した時のカラム数の判断(409ページ)という肝心のところがよくわかりません。リスト6.25は、どの部分、どのテンプレートに記述するものなのでしょうか?
    2行目と5行目に記述すべき内容もわかりません…。具体例を教えていただけませんか?

    • >ta-kumiさん
      こんにちは。

      >リスト6.25は、どの部分、どのテンプレートに記述するものなのでしょうか?
      >2行目と5行目に記述すべき内容もわかりません
      テーマの構造によって、記述する先のテンプレートも、記述する内容もさまざまです。

      >具体例を教えていただけませんか?
      小粋空間さんで配布されているテーマが、実際の例になっていますので、そのテーマを参照してみてください。

      • >小粋空間さんで配布されているテーマが、実際の例になっていますので、そのテーマを参照してみてください。
        ですね。以下のリンクから現在の最新版をダウンロードできます。

        http://www.koikikukan.com/archives/download/MovableType/themes/theme_blog_6_0_0_style_liquid.zip

        ちなみに「Movable Type 5プロフェッショナルガイド」のP.90「3-4 カラムレイアウトの定義」にも記載しています。配付テーマも同じコードを使っているので、照らし合わせれば理解が容易になるかもしれません(ご要望の判定コードの解説は最小限ですが・・・)。

  • スマートじゃないかもしれませんが、この記述で独自クラスのカラム判断が可能になりました。皆さん、ありがとうございます。
    ただドロップダウンの日本語ローカライズがまだ完全に解決してません。追って別スレッドで質問させていただきます。
    
    

    <mt:If name="page_layout" like="layout-001|layout-002|layout-003|layout-004">
    <mt:SetVar name="page_columns" value="3">
    </mt:If>
    <mt:If name="page_layout" like="layout-01|layout-02|layout-03|layout-04|layout-05|layout-06|layout-07|layout-08|layout-w|layout-1|layout-5">
    <mt:SetVar name="page_columns" value="2">
    </mt:If>

返信する