システム開発ブログ

Movable Type

Webサイト構築・Web戦略

事業開拓部

MovableType4:エントリーをカテゴリで絞ってエクスポートする

MovableTypeで、エントリーを他のブログに移す時、エクスポート機能を利用します。
今回は、あるカテゴリのデータのみ、エクスポートしたい場合の方法を書きます。

(1)インデックステンプレートにデータ出力用テンプレートを作成する。

インデックステンプレートに記述する内容は
MTEntriesタグを使用し、categoriesモディファイアでカテゴリを指定します。[サンプルは下へ]

・出力ファイル名・・・任意(.txtファイル等)
・テンプレートの種類・・・カスタムインデックステンプレート
・公開・・・手動

※既定で設定されている「スタティック」のままだと、記事が更新される度に
  再構築されてしまいます。
  「手動」にして必要な時だけ再構築したほうが無駄な処理が省けます。

(2)作成したテンプレートを再構築する。

(3)出力したファイルを取得する。

(4)テキストエディタで開き文字コード・改行コードを整える。

文字コード:UTF-8
       (MovableTypeの設定によって異なりますが、デフォルトはUTF-8なので、
       ここでは、UTF-8とします。)
改行コード:LF
       (改行コードは、サーバーやTM
        他の改行コードでもいけるかもしれません。)


  • 確認方法
    作成したファイルをMovableTypeで、インポートしてください。
    インポート後、ブログ記事一覧で、ブログ記事数を確認してください。
    ちなみに、カテゴリー毎のブログ記事数は、カテゴリ一覧を見れば、件数が一覧できます。

  • 文字コードについて
    インポートのオプションで、「インポートするファイルの文字コード」を指定すれば、
    文字コード変更しなくても済むかと思って試したのですが、
    エラーになってしまいました。
    ファイルの文字コード自体を変更しておく方が賢明なようです。

  • 参照:Movable Type のブログ記事インポートフォーマット


サンプルコード:
<mt:Entries categories="A,B,C">AUTHOR: <$mt:EntryAuthor$>
TITLE: <$mt:EntryTitle$>
BASENAME: <$mt:EntryBasename$>
STATUS: <$mt:EntryStatus$>
ALLOW COMMENTS: <$mt:EntryFlag flag="allow_comments"$>
CONVERT BREAKS: <$mt:EntryFlag flag="convert_breaks"$>
ALLOW PINGS: <$mt:EntryFlag flag="allow_pings"$>
PRIMARY CATEGORY: <$mt:EntryCategory$>
<mt:EntryCategories>CATEGORY: <$mt:CategoryLabel$>
</mt:EntryCategories>
DATE: <$mt:EntryDate format="%m/%d/%Y %I:%M:%S %p"$>
<mt:EntryIfTagged>TAGS: <mt:EntryTags glue=",">"<$mt:TagName quote="1"$>"</mt:EntryTags></mt:EntryIfTagged>
-----
BODY:
<$mt:EntryBody$>
-----
EXTENDED BODY:
<$mt:EntryMore$>
-----
EXCERPT:
<$mt:EntryExcerpt$>
-----
KEYWORDS:
<$mt:EntryKeywords$>
-----
<mt:IfNonZero tag="MTEntryCommentCount"><mt:Comments>COMMENT:
AUTHOR: <$mt:CommentAuthor default=""$>
EMAIL: <$mt:CommenterEmail$>
URL: <$mt:CommentURL$>
IP: <$mt:CommentIP$>
DATE: <$mt:CommentDate format="%m/%d/%Y %I:%M:%S %p"$>
<$mt:CommentBody convert_breaks="0"$>
-----
</mt:Comments></mt:IfNonZero><mt:IfNonZero tag="MTEntryTrackbackCount"><mt:Pings>PING:
TITLE: <$mt:PingTitle$>
URL: <$mt:PingURL$>
IP: <$mt:PingIP$>
BLOG NAME: <$mt:PingBlogName$>
DATE: <$mt:PingDate format="%m/%d/%Y %I:%M:%S %p"$>
<$mt:PingExcerpt$>
-----
</mt:Pings></mt:IfNonZero>
--------
</mt:Entries>

この記事に関連する記事の一覧


システム開発ブログ

Twitterでilovex_officialをフォローしてください

カテゴリー

以前の部署別ブログ

ページのトップ