
http://www.h-fj.com/blog/archives/2007/09/08-105 …
上記を実現したく作業していましたが、
テンプレートモジュール『サイドバー (2カラム)』を編集しても反映されません。
これまでサイドバーのカスタマイズはウィジェットセット『2カラムのサイドバー』を
いじっていただけなので(反映もされていたので)疑問に思わなかったのですが、
そもそもテンプレートモジュール『サイドバー (2カラム)』はどこで使われているのですか?
ウィジェットセットとは同時に使われるものですか?
それともどちらを使うか指定してあるのでしょうか。
サイドバーの設定について、これら2つの役割の違いがわかりません…。
大変初歩的な質問ですみません。よろしくお願いします。
No.1ベストアンサー
- 回答日時:
「ウィジェットセット『2カラムのサイドバー』」というのがちょっとよくわからない(デフォルトではない?)のですが
>テンプレートモジュール『サイドバー (2カラム)』はどこで使われているのですか?
について。
「テンプレート」の画面にいくと、右上の検索窓が「検索 テンプレート」になっていると思います。この状態で、『サイドバー (2カラム)』と入れて検索してみて下さい。『サイドバー (2カラム)』と共に、この文字列が使われているテンプレートが出てくると思います。
(『サイドバー (2カラム)』というテンプレートモジュールはMT4.1系で使われている(MT4.2デフォルトにはない)ので、MT4.1と仮定します)
『サイドバー (2カラム)』で検索すると、「フッター」が出てくると思います。
フッターの中身を見てみると、条件分岐になっていると思います。それを読み解けば、どのテンプレートが有効なのかがわかります。
例えば下記のようになっているとすると
<MTIf name="sidebar">
<MTIf name="page_layout" eq="layout-tw"$>
<$MTInclude module="サイドバー (2カラム)"$>
<MTElse>
<MTIf name="page_layout" eq="layout-wt"$>
<$MTInclude module="サイドバー (2カラム)"$>
<MTElse>
<MTIf name="page_layout" eq="layout-twt"$>
<$MTInclude module="サイドバー (3カラム)"$>
<MTElse>
<$MTInclude module="サイドバー (3カラム)"$>
</MTElse>
</MTIf>…
<MTIf name="sidebar">は、「sidebarという名前がテンプレートに定義されている時」という意味です。つまり、テンプレートに<MTSetVar name="sidebar" value="1">という記述が入っている時、という意味になります。(例えばデフォルトテンプレートでは「メインページ」の冒頭部分に入っていると思います)
<MTIf name="page_layout" eq="layout-tw"$>
<$MTInclude module="サイドバー (2カラム)"$>
は、「page_layoutという名前にlayout-twという値がテンプレートに指定されている時、サイドバー (2カラム)を挿入する」という意味です。
つまり、「テンプレートに<MTSetVar name="page_layout" value="layout-wtt">という記述が入っている時、サイドバー (2カラム)を挿入する」という意味になります。
一方、<MTIf name="page_layout" eq="layout-twt"$>、つまりlayout-twtの場合は、<$MTInclude module="サイドバー (3カラム)"$>、「サイドバー (3カラム)」を挿入します。
でもってそもそもこのpage_layoutがどのような値を持っているかをどのように確認するか、なのですが。
テンプレートを探し回ると時間だけかかって大変ですので、これもやはり「テンプレートの検索」を使うと便利です。
「page_layout」と検索すると、このキーワードが使われているテンプレートが出てきますので、開いて見てみます(多分スタイルシートに書かれているのではないかと思うのですが)
そこにある
<MTSetVar name="page_layout" value="layout-**">
という記述のvalue=に書かれている値を読み取り、「フッター」においてどのサイドバーテンプレートモジュールを使うかを決定している、ということになります。(逆に言えば、ブログのカラム構成を変更したい場合は、このスタイルシートにあるpage_layoutの値を変更すればよい)
…という風にして、どのテンプレートが有効なのかを調べます。
この回答への補足
大変詳しい回答ありがとうございます!
すみません、おっしゃる通り使用しているのは4.1です。
ウィジェットセットは、デフォルトで
『2カラムのサイドバー』『3カラムのサイドバー(メイン)』『3カラムのサイドバー(サブ)』
の3つが用意されていました。
(スタイルに依存するのでしょうか?『規定のスタイル』からMinimalistを選びました)
テンプレートの検索も試したのですが(すみません、こちらも書くべきでした;)
『サイドバー (2カラム)』自体と、これのバックアップファイルしかヒットしなかったのです。
そこで「どこで使われてるんだろう?」と疑問に思ったのですが…。
疑問に思うまでもなく、見つからない=使われてない、で良かったのでしょうか;
ではフッターにはどのように記述されているかというと、
サイドバーを設定しているらしい記述は
<MTIf name="sidebar">
<$MTInclude module="サイドバー"$>
</MTIf>
の3行で、テンプレートモジュール『サイドバー』には
<div id="beta">
<div id="beta-inner">
<mt:if name="page_columns" eq="2">
<$mt:WidgetSet name="2カラムのサイドバー"$>
<mt:else name="page_columns" eq="3">
<$mt:WidgetSet name="3カラムのサイドバー(メイン)"$>
</mt:if>
</div>
</div>
<mt:if name="page_columns" eq="3">
<div id="gamma">
<div id="gamma-inner">
<$mt:WidgetSet name="3カラムのサイドバー(サブ)"$>
</div>
</div>
</mt:if>
と記述されています。
つまり現状では『サイドバー (2カラム)』はあるだけで使われてない、
よって編集しても反映されない、ということなのでしょうか。
私はてっきりテンプレートモジュールとウィジェットセットの両方から編集できるものかと思っていました。
例えば、サイドバーの内容をテンプレートモジュールとウィジェットセットに分割し、
『フッター』に
<MTIf name="sidebar">
<$MTInclude module="サイドバー(テンプレート)"$>
<$MTInclude module="サイドバー(ウィジェット)"$>
</MTIf>
として、
『サイドバー(テンプレート)』にどのテンプレートモジュールを使うか、
『サイドバー(ウィジェット)』にどのウィジェットセットを使うか、
をそれぞれ記述すれば、両方から編集することは可能ですか?
No.2
- 回答日時:
お使いなのはMT4.15ですね。
確かにMT4.15では補足された内容になっています。(4.1でも他のバージョンだとテンプレートがまた違うので^^;)
>つまり現状では『サイドバー (2カラム)』はあるだけで使われてない、よって編集しても反映されない、ということなのでしょうか。
はい。
フッターの記述を<$MTInclude module="サイドバー(2カラム)"$>などと入れ替えて使うこともできますし。
デフォルトテンプレートは、「こんな使い方(書き方)ができます」の例だと思えばいいのではないでしょうか。
MT3系まではことさら部品が分離されず、一つのテンプレートに長々とソースが書かれているのが普通でしたので、そちらに慣れている人はウィジェットが面倒だと感じることがあるかもしれません。
同じソースが別の方法で存在しているのはそういうことではないかと。
つまり、あなたのいいように使って下さい、という。
テンプレートモジュールでもウィジェットセット使っても、とにかくちゃんとテンプレートタグの意味がわかって意図通りHTMLが吐き出されていればよいわけで、どういう使い方が正解、というのはありませんので、質問者様のお好きにテンプレート管理をされていいと思います。
(質問に対する直接の答えでなくてすみませんが)
随分とバージョンごとに細かく違うものなんですね;
にも関わらず丁寧に対応していただき、本当にありがとうございました。
ひとまず、現状ではウィジェットセットしか使うように指定されていない
ということがわかったのですっきりしました。
フッター、サイドバーの構造も解説していただいたので、
テンプレートモジュールとウィジェットセットの両刀(?)にも挑戦してみようと思います。
果たしてそれが私にとって本当に効率の良い管理の仕方かはまだわかりませんが;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(ブログ) ブログのサイドバーのモジュールが下に移動 2 2023/08/15 08:49
- その他(ブログ) シーサーブログのヘッダー画像の差し替え方法 4 2022/09/19 11:01
- その他(プログラミング・Web制作) google formsを使ったタスク依頼フォーム作成におけるご相談 1 2023/06/22 15:55
- その他(ブラウザ) エッジのスタート画面について 2 2022/08/17 11:12
- その他(ブラウザ) edgeの右端のサイドバーで、お気に入りは表示したく、その右側の縦の帯は非表示に 2 2023/03/25 10:28
- その他(ブログ) シーサーブログのタイトル文字位置とブログ説明文字位置の変更方法 2 2022/09/22 20:55
- その他(プログラミング・Web制作) google formsで回答者をスプレッドシートに記載する方法 1 2023/06/23 11:22
- その他(ブラウザ) Edgeのお気に入りを常に左に表示したい 1 2022/11/05 11:56
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- UNIX・Linux sedでの正規化 2 2022/05/10 11:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
gooブログで時々レイアウトが変...
-
MTのインデックス・テンプレー...
-
gooブログのテンプレートのTwit...
-
movabletype4 rssフィードの日付
-
ホームページの更新を楽にしたい。
-
Wordpressで投稿ごとに日付を表...
-
Movable Typeでカテゴリの月別...
-
レポート2000字程度なら何文字...
-
ホームページビルダーを使用し...
-
大学のレポート A4で1枚レポー...
-
HTML作成でh1の処理について...
-
【続きを読む】について
-
ブログパーツが作動しない、、、
-
掲示板への貼り付け
-
テプラの文字を大きくしたいで...
-
メニューの正しい配置の仕方
-
英文つくりました。文法的に正...
-
livedoorのブログで…。
-
Googleカレンダーの日付の色
-
ブログの記事作成の事で質問です
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
MovableType で PRE が綺麗に表...
-
FC2の3カラムの公式テンプレー...
-
FC2ブログのプラグイン設定...
-
blogの曜日表示について。
-
MOVABLE TYPE vs WORD PRESS 最...
-
サイトマップのメタタグ
-
MovableTypeについて
-
gooブログタイトル文字をTOPへ...
-
FC2ブログをスマホで閲覧した際...
-
MT4でのMTモンスターの設定につ...
-
gooブログへのアソシエイツバナ...
-
キーワードの設定について。
-
ブログの公開について
-
IEだと表示がおかしい
-
FC2ブログのテンプレート改造に...
-
ブログのサイドメニューを並び...
-
MovableType 複数のBLOGを作っ...
-
FC2ブログのブックマーク機能に...
-
ムーバブルタイプのエントリー
-
ライブドアブログのテンプレー...
おすすめ情報