中央カラムに「ニュース」「お知らせ」を表示する
公開テンプレートの中央カラムの先頭に「ニュース」「お知らせ」等の、エントリーとは別のちょっとした情報を表示させる方法です。ご質問を頂きましたので本エントリーにて紹介致します。
ここでは Movable Type をサンプルに説明していますが、公開テンプレートであればどれも大体同じカスタマイズで実現可能です。
1.テンプレートの修正
基本は下記のように、テンプレートの中にあるエントリー表示開始位置の少し前に、表示したい情報(青色)を埋め込みます。ここではエントリーと同じスタイルになるようにタイトルと本文を表示しています。
:
<!-- 中央カラム開始 -->
<div id="content">
<div class="blog">
<div class="entry">
<p class="news-header">●お知らせ</p>
<p class="news-content">ブログを始めました。よろしくお願い致します。</p>
</div>
<MTEntries>
<$MTEntryTrackbackData$>
<!-- エントリー日付開始 -->
<MTDateHeader>
<div class="date"><$MTEntryDate format="%x"$></div>
</MTDateHeader>
<!-- エントリー日付終了 -->
:
追加部分全体を div 要素で括り、エントリーと同じ class="entry" を与えています。これで全体のスタイルがエントリーと同じものになります。
その下のタイトルは class="news-header" という新しい class 属性を与え、表示位置を整えています。また本文の p 要素にも class="news-content" を与えています。
2.スタイルシートの修正
下記の内容をスタイルシートに追加します。
.news-header {
margin: 5px 0;
color: #444444;
font-size: 12px;
font-weight: bold;
}
.news-content {
margin-top: 5px;
}
設定は以上です、あとは表示したいタイトルと本文をお好きな内容に書き換えてください。
ただしこの方法では、メインページやアーカイブページに同じ情報を表示したい場合、各テンプレート全てを修正する必要があります。次項ではもう少し変更時の手間が省ける方法を紹介します。
3.テンプレートモジュールにする
お知らせ部分を「テンプレートモジュール」として登録すれば、モジュールの中身を書き換えるだけで、他のテンプレートに同じ内容を反映させることができます。
3.1 新しいテンプレートモジュールの作成
管理メニューより[テンプレート] - [モジュール] - [モジュールを新規作成] の順にクリックし、下記の内容を設定します。
テンプレート名:news
モジュールの内容:下記をコピー
<div class="entry">
<p class="news-header">●お知らせ</p>
<p class="news-content">ブログを始めました。よろしくお願い致します。</p>
</div>
3.2 テンプレートの修正
テンプレートモジュールの内容を表示させたい位置に MTInclude タグを設定します。
:
<!-- 中央カラム開始 -->
<div id="content">
<div class="blog">
<$MTInclude module="news"$>
<MTEntries>
<$MTEntryTrackbackData$>
<!-- エントリー日付開始 -->
<MTDateHeader>
<div class="date"><$MTEntryDate format="%x"$></div>
</MTDateHeader>
<!-- エントリー日付終了 -->
:
スタイルシートは2項の内容をそのままお使いください。
なおこの方法を利用した場合、テンプレートモジュールの内容を変更・保存しただけではメインページや他のアーカイブページに反映されません。
必ず再構築を実施してください。
- Movable Typeのコンテンツデータで公開日を比較する方法
- MT7テンプレート作成画面に表示される「コンテンツタイプ」「コンテンツフィールド」の意味
- Movable Typeでテンプレートの動作を簡単に確認する方法
- Movable Typeでスマホサイト用トップページをPCサイト用トップページと異なるURLにする方法
- Movable TypeでCSSファイルやJavaScriptファイルなどを管理するためのTips
- Movable Type 4.2 テンプレートセット(コミュニティ用)修正
- Movable Type 4.2 テンプレートセット(コミュニティブログ対応版)修正
- Movable Type 4.2 テンプレートセット(コミュニティブログ対応版)
- Movable Type 4.2 配布テンプレートセット修正(カテゴリーアーカイブ・コメント完了)
- Movable Type 4.2 テンプレートセット修正(アーカイブインデックス追加等)
- Movable Type 4.2 テンプレートセット修正
- Movable Type 4.1 テンプレートセット修正
- 「iPhoneテンプレートfor MT」 by cremadesign
- Movable Type 4.1 テンプレートセット(スタイル対応版)
- 小粋空間テンプレートセットのカラムレイアウト変更方法
≫ 「お知らせ」の表示を一部にする from 瑞了奇譚
私のブログでは「小粋空間」さんで紹介している「中央カラムに「ニュース」「お知らせ」を表示する」を使わせていただいています。
しかし、これだけのカスタマ... [続きを読む]
≫ 「お知らせ」の表示を一部にする from 瑞了奇譚
私のブログでは「小粋空間」さんで紹介している「中央カラムに「ニュース」「お知らせ」を表示する」を使わせていただいています。
しかし、これだけのカスタマ... [続きを読む]
yujiroさん、早速エントリーして頂いてありがとうございます。とても参考になります。
これを基に、TABLEを使って、自分の思うようなデザインにしようとしているところです。
今のところ、なんとか表の高さを変えられないか奮闘中です。
>haruさん
こんばんは。
ご連絡ありがとうございました。
また何かございましたらご連絡ください。
それではよろしくお願い致します。
こちらのサイト凄く充実して凄いですねぇ で、教えて頂きたいのですが、3-2のテンプレートモジュールとはどこのことでしょうか? よろしくお願い致します。
>たけしさん
こんにちは。
ご質問の件ですが、本文がやや表現不足でした。「テンプレートモジュールの内容を表示させたい位置に MTInclude タグを設定します。」というのは、「3.1項のテンプレートモジュールの内容を表示させたい各テンプレートに、 MTInclude タグを設定します。」が正解です。
「各テンプレート」というのは、MT4であれば、インデックステンプレートのメインページや、アーカイブテンプレートのブログ記事・ブログ記事リストが該当します。
それではよろしくお願い致します。
yujiroさん
こちらですが、WordPress日本語版2.5.1にて適用できませんでしょうか?
中央カラムにバナー広告を表示する ですと、お知らせなどの頻繁に更新するものに
対しては、修正個所が多すぎて管理が辛くなります。
1ファイル更新すれば、ページやアーカイブに変更が反映できる方法が
ありましたらお教え頂けませんでしょうか。
よろしくお願いします。
タマさん>
WordPressのページ機能とか使わない邪道?な方法でしたら下記でいけると思いますよ。
中央カラムにバナー広告を表示する のタグを使い、外部にお知らせ等を記載するPHPを作成し、index.php/single.php/archive.php等から読みこませればOKです。
具体的には・・・
1.お知らせ用のexample.phpを作成
内容は
<div class="ad">
お知らせ内容
</div>
で書きます。
2.index.php/single.php/archive.php等の表示させたいところに下記を記載
<?php include('example.php'); ?>
挿入位置などはhttp://www.koikikukan.com/archives/2006/08/31-002322.phpをご参考ください。
<div class="blog">
以下でいいと思いますよ。
3.CSSに下記を追加
.ad {
margin:8px 0 18px 5px;
font-size: 10px;
}
フォントサイズなどは適当に修正してくださいね。
これでexample.phpを編集すれば<?php include('example.php'); ?>を挿入したページへの反映が1度でできるようになりますが・・・
WordPressの機能でexample.phpを編集できないのでちょっと不便かもです。
他に編集しやすい方法があればいいのですけどね。
>yujiroさん
他にスマートな方法がありましたら私にも教えてください(苦笑)
追加です。
書き込み権限をテンプレートフォルダ等に与えておけば、管理画面→デザイン→テーマエディタ からexample.phpの編集はできそうなのでブラウザオンリーで変更が可能そうですね。
#未検証です。
>タマさん
こんばんは。
kenさんの方法をご利用ください。
>kenさん
こんばんは。
フォロー、ありがとうございました!
>kenさん
ありがとうございます。
お教え頂いた方法でしたい事ができました。
example.phpへ書き込み権限を与えると管理画面→デザイン→テーマエディタから
対象を変更できるので、いつでも更新ができるようになりました。
>yujiroさん
忙しいのにありがとうございます。
また何かありましたらお願い致します。
>タマさん
こんばんは。
ご連絡ありがとうございました。
うまくできたようで良かったです。
ではでは!