MT APIの勉強

MT Perl APIを使うで紹介されているソースコードは dieが抜けていたり、自分の環境では動作しなかったため以下に変更。

同時に DB_Fileが入っていなかったので、


# perl -MCPAN -e shell
cpan> install DB_File


でインストール。mt-check.cgiで確認。

DB_File
Your server has DB_File installed (version 1.810).

変更後のソースコード:dump_entries.pl


#!/usr/bin/perl -w
use strict;
use lib qw (/var/www/html/mt3/lib);
use lib qw (/var/www/html/mt3/extlib);
use MT;

my $mt = MT->new(Config => "/var/www/html/mt3/mt.cfg") or die "cannnot load mt";
my @entries = MT::Entry->load({ blog_id => 1 }, {
sort => 'created_on',
direction => 'descend',
limit => 10
});

for my $entry (@entries) {
use Jcode;
printf("%s\n", Jcode::convert($entry->title, "euc"));
}

use lib qw (/var/www/html/mt3/extlib);
Jcode.pmを読むために追加しました。

my $mt = MT->new(Config => "/var/www/html/mt3/mt.cfg") or die "cannnot load mt";
dieが抜けてましたので追加。

my @entries = MT::Entry->load({ blog_id => 1 }, {
blogはFirst weblogしかなかったので2から1へ変更。

use Jcode;
printf("%s\n", Jcode::convert($entry->title, "euc"));

出力がUTF-8のようなのだが、ターミナル上で文字化けを回避できなかったので上記に変更。