タグ「テンプレート」が付けられているもの

Websliceを購読できるようにしてみました

IE8からWebsliceという機能が使えるようになっています。

IE8_Webslice.png

RSS Feedの公開よりも手軽に出来るので、今後広く普及しそうな予感がします。

試しにMovable Typeのテンプレートを編集して、自分のブログでWebsliceを使えるか試してみました。

Trackback Auto-Discoveryを無効に

トラックバックのスクリプト名を変更してもBotでアクセスされてトラックバックのアドレスが収集されてしまいます。そういうBotからのアクセスを拒否すれば良いのでしょうが、ユーザーエージェントが巧妙に偽装されている場合があり、アクセスログから調べるのはとても大変です(・_・;。

きちんとトラックバックを送っていただける方には申し訳ないのですが、Trackback Auto-Discoveryの機能を使わないようにテンプレートを修正しました。

MTOS 4.2 RC4でEntryTrackbackDataをキーワードに全テンプレートを検索すると、「ブログ記事の概要」「ウェブページ」「ブログ記事」がヒットしますので、それぞれのテンプレート内にある<$mt:EntryTrackbackData$>を削除してしまうか、mt:Ignoreタグを使って処理を無効化してしまいます。

これでもトラックバックのURLを拾われるようならば、別の対策を考えることにします・・・。

フォトギャラリー

MTOS 4.2 RC4でプラグインを使わずに、デフォルトのタグや機能でフォトギャラリーみたいなものを作成してみました。

ウェブページのテンプレートを下記のように修正します。

                                <div class="asset-content">
<mt:If tag="PageBody">
                                    <div class="asset-body">
                                        <$mt:PageBody mteval="1"$>
                                    </div>
</mt:If>
<mt:If tag="PageMore">
                                    <div id="more" class="asset-more">
                                        <$mt:PageMore mteval="1"$>
                                    </div>
</mt:If>
                                </div>

mtevalモディファイアを追加することで、ウェブページ内でMovable Typeタグが展開されるようになります。

ウェブページを新規作成し、本文もしくは追記に下記のようなタグを入力します。

<MTAssets type="image" lastn="20">
<a class="asset-image thickbox" rel="photo_gallery" title="<$MTAssetDescription$>" href="<$MTAssetURL$>"><img src="<$MTAssetThumbnailURL height="120"$>" class="asset-img-thumb" alt="<$MTAssetLabel$>" title="<$MTAssetDescription$>" /></a>
</MTAssets>

MTAssetsタグにtagモディファイアを追加すれば、画像に設定されいるタグで表示する画像を絞り込むことが可能です。ダイナミックではtagモディファイアは使えません。

オリジナル画像の表示にThickboxを使わない場合は、<a></a>内にあるclass="asset-image thickbox" rel="photo_gallery"を削除します。ThickboxではなくLiteboxを使いたい場合は、rel="lightbox[photo_gallery]"に修正すれば良いと思います。

ウェブページの公開方法をスタティックにしていると、画像を追加してもフォトギャラリーは更新されませんので、随時保存し直して再構築する必要があります。公開方法をダイナミックに変更すれば、画像を追加すれば自動的に更新されますので、手間を考えればダイナミックをお勧めします。

OpenSearchへの対応

2008-07-10_1.png

OpenSearchに対応しているInternet Explorer 7でサイトを見ていると、画像のように検索オプションボタンの色がオレンジ色に変わることがあります。Firefox 2.0以上のバージョンでも同様に、検索オプションのボタンが変わることがあります。

参照:OpenSearch とは

Movable Type 3.3以降で検索結果のテンプレートがOpenSearchに対応しているようですが、完全に対応しているとは言えないようですので、調べたり試行錯誤したりして対応させてみました。

コメントを見やすく表示する

MTOS 4.2 RC2をインストールしてお試し中です。

MTOS 4.2では、コメントの返信機能が使えるようになっているのですが、テンプレートの表示では返信機能が生かされていないようです・・・。

コメントの返信も簡単に表示も解りやすく | MovableType.jpを参考にして、コメントのテンプレートを修正して入れ子に表示できるようにしてみました。

ブログ記事の詳細テンプレート(Movable Type 4.1)

Movable Type 4.1でダイナミックパブリッシングを使用するにしたら、ブログ記事の続き部分が変な表示なってしまいました。

<div id="more" class="asset-more"><br />
<p>追記</p><br />

という感じで、余計な<br />が出力されています。

ブログ記事の詳細テンプレートを見ると、

<MTIfNonEmpty tag="EntryMore" convert_breaks="0">
        <div id="more" class="asset-more">
            <$MTEntryMore$>
        </div>
</MTIfNonEmpty>

となっており、convert_breaks="0"が悪さをしているんじゃないと思います。

素人考えですが、MTIfNonEmptyでconvert_breaks="0"は使えないんじゃないでしょうか?。

convert_breaks="0"を削除して、余計な<br />が出力されず、きちんと表示されることを確認しましたし、削除したことで不具合も無さそうです。

タグクラウドのテンプレートを修正

Movable Type 4.1のウィジェットテンプレートにタグクラウドというのがあります。

mt:Tagsというタグのモディファイアの設定が間違っている部分があり、修正しないと期待した通りの結果が得られません。

<div class="widget-tag-cloud widget">
    <h3 class="widget-header">タグクラウド</h3>
    <div class="widget-content">
        <ul class="widget-list">
    <mt:Tags limit="20" sort_by="rank">
            <li class="rank-<$mt:TagRank max="10"$> widget-list-item"><a href=""><a href="<$mt:TagSearchLink$></a>"><$mt:TagName$><a href=""></a></a></li>
    </mt:Tags>
        </ul>
    </div>
</div>

赤く表示しているrankという部分を下記のようにcountと修正します。

<div class="widget-tag-cloud widget">
    <h3 class="widget-header">タグクラウド</h3>
    <div class="widget-content">
        <ul class="widget-list">
    <mt:Tags limit="20" sort_by="count">
            <li class="rank-<$mt:TagRank max="10"$> widget-list-item"><a href=""><a href="<$mt:TagSearchLink$></a>"><$mt:TagName$><a href=""></a></a></li>
    </mt:Tags>
        </ul>
    </div>
</div>

mt:Tagsについては、MTTags | テンプレートタグリファレンスを参照してください。

タグのテンプレート

Movable Type 4.01でダイナミック・パブリッシングを使用しています。

ブログ記事に複数のタグを設定していると、ブログ記事を表示した時にタグを表示する部分で、余計な文字が表示されます。

mt4_tag.png

余計な"が表示されています。

テンプレート「ブログ記事のメタデータ」を修正

Movable Type 4.01 のテンプレートに「ブログ記事のメタデータ」というものがあります。

このテンプレート内で

<MTIfPingsActive>| <a href="<$MTEntryPermalink$>#trackback">トラックバック(<$MTEntryTrackbackCount$>)</a></MTIfPingsActive>

となっている部分があります。#trackbackとname属性を指定していますが、 これだとリンクをクリックしてもトラックバックの部分へジャンプできませんので、下記のように修正しました。

<MTIfPingsActive>| <a href="<$MTEntryPermalink$>#trackbacks">トラックバック(<$MTEntryTrackbackCount$>)</a></MTIfPingsActive>

バックグラウンドのキューを使って再構築を行う

Movable Type 4の公開設定に

バックグラウンドのキューを使って再構築を行う

というのがあります。

どうやって使うのかよくわからなかったのですが、色々と実験してみてどんなものなのかわかってきました・・・。

エントリーを作成したり修正した後に保存した時や、テンプレートを修正して保存した時に、データベースへデータが保存されます。そして、cronを使ってrun-periodic-tasksを実行させるようにしていると、再構築作業が実行されてhtmlやcssなどのファイルが書き換えられます。