エントリー・タグを書き出す方法

ひとつ前のエントリで、MT3.xから書き出したblog記事のバックアップをMT4でインポートする際にタグ情報を読み込んでくれないと書いた。よくよく調べてみると、MT3.x側から書き出されたファイル自体に、肝心のエントリー・タグの項目(TAGS: )が含まれていないことが判明。

たとえば、こんな感じ(一部抜粋・後半略)。

AUTHOR: somin
TITLE: MT3.xでcookieが効かない
STATUS: Publish
ALLOW COMMENTS: 1
CONVERT BREAKS: __default__
ALLOW PINGS: 1
PRIMARY CATEGORY: しかるべき対処
CATEGORY: しかるべき対処

DATE: 01/22/2007 12:47:10 PM ----- BODY: いつからかは定かではないが、Movable Typeの個別エントリでcookieが効かなくなっていた。ソースを見ると、mt-site.jsというJavaScriptファイルを読み込んでいるにもかかわらず、当該ファイルが存在しない。十中八九、これが原因かと。

本来なら、このブロックの最初のほうに以下のような項目が存在するべきである。

TAGS: "Movable Type"

この書き出しフォーマットを指定しているライブラリ(モジュール?)を探してみたところ、アプリケーションディレクトリのlib/MT/importExport.pmの540行目に以下のような記述を見つけた。

    $tmpl->text(<<'TEXT');
AUTHOR: <$MTEntryAuthor strip_linefeeds="1"$>
TITLE: <$MTEntryTitle strip_linefeeds="1"$>
STATUS: <$MTEntryStatus strip_linefeeds="1"$>
ALLOW COMMENTS: <$MTEntryFlag flag="allow_comments"$>
CONVERT BREAKS: <$MTEntryFlag flag="convert_breaks"$>
ALLOW PINGS: <$MTEntryFlag flag="allow_pings"$>
<MTIfNonEmpty tag="MTEntryCategory">PRIMARY CATEGORY: <$MTEntryCategory$>
</MTIfNonEmpty><MTEntryCategories>
CATEGORY: <$MTCategoryLabel$>
</MTEntryCategories>
DATE: <$MTEntryDate format="%m/%d/%Y %I:%M:%S %p"$>
-----
BODY:
<$MTEntryBody convert_breaks="0"$>
-----
EXTENDED BODY:
<$MTEntryMore convert_breaks="0"$>
-----
EXCERPT:
<$MTEntryExcerpt no_generate="1" convert_breaks="0"$>
-----
KEYWORDS:
<$MTEntryKeywords$>
-----
<MTComments>
COMMENT:
AUTHOR: <$MTCommentAuthor strip_linefeeds="1"$>
EMAIL: <$MTCommentEmail strip_linefeeds="1"$>
IP: <$MTCommentIP strip_linefeeds="1"$>
URL: <$MTCommentURL strip_linefeeds="1"$>
DATE: <$MTCommentDate format="%m/%d/%Y %I:%M:%S %p"$>
<$MTCommentBody convert_breaks="0"$>
-----
</MTComments>
<MTPings>
PING:
TITLE: <$MTPingTitle strip_linefeeds="1"$>
URL: <$MTPingURL strip_linefeeds="1"$>
IP: <$MTPingIP strip_linefeeds="1"$>
BLOG NAME: <$MTPingBlogName strip_linefeeds="1"$>
DATE: <$MTPingDate format="%m/%d/%Y %I:%M:%S %p"$>
<$MTPingExcerpt$>
-----
</MTPings>
--------
TEXT

そこで、最初のほうのDATA: の行の下(もちろん上でも可)に、以下を追記。

TAGS: <MTEntryTags glue=","><$MTTagName quote="1"$></MTEntryTags>

あらためて書き出すと、エントリー・タグの項目がちゃんと追加されていた。

後で知ったが、インデックス・テンプレートを新規作成するという方法もあるようだ(下記リンク参照)。

Junnama Online - MT3→MT4へタグやbasenameを引き継いで(インポート&エクスポートで)簡単に移行する方法

トラックバック(0)

このブログ記事を参照しているブログ一覧: エントリー・タグを書き出す方法

このブログ記事に対するトラックバックURL: http://somin.heteml.jp/mt/mt-tb.cgi/4314

コメントする

このブログ記事について

このページは、Sominが2007年10月25日 14:03に書いたブログ記事です。

ひとつ前のブログ記事は「MT4でタグがインポートされず」です。

次のブログ記事は「ダイナミックパブリッシングでatom.xmlが表示されない」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。