<$MTEntryBasename$> - MovableType の新しいタグを覚えた

<$MTEntryBasename$>

拡張子無しのエントリーファイル名。出力されるファイルが first_post.html の場合は first_post になる。

MovableType

通常用いられる <$MTEntryLink$><$MTEntryPermalink$> は絶対 URL (http://... で始まる URL) を出力するため、CSS で外部リンクと内部リンクの区別がしにくくなります。

この問題を解決するため MT で内部リンクを出力する方法を探していたら、ドキュメントに <$MTEntryBasename$> を発見!<$MTEntryLink$><$MTEntryPermalink$> をすべて以下に置き換えることで、内部リンクを全て相対パスにすることができました。

href="/archives/<$MTEntryBasename$>"

デフォルトの設定ではアーカイブパス(京の路では /archives)は無く、以下のようになります。

href="/<$MTEntryBasename$>"

.html を付けたい場合はこう。(個人的には .html 無しの方が好き)

href="/<$MTEntryBasename$>.html"

今回の変更で拡張子無しのリンクに統一したのに会わせて、個別エントリアーカイブでは <link rel="canonical" href="..." /> で .html 無しの URL を明示。さてさて、検索エンジンはどれくらいで対応してくるかな?

その他ちょこちょことテンプレートをいじって、だいぶ吐き出される HTML ソースが読みやすくなりました。(ソースが全くインデントされてないのは僕の趣味)

ちなみに、CSS ではこんな風に外部リンク、特定ドメインへのリンクなどを区別できます。

a[href^="http:"],
a[href^="https:"]{
    // external links
}
a[href^="http://matake.jp"] {
    // links to matake.jp
}