MovableTypeのエントリーで、それと同じカテゴリーに属するエントリーをとってくる場合は「MTTagInvoke」というPluginをよく使うけども、これでもたぶんいける。MTEntrySameCategoryという独自のコンテナタグを作る。とりあえずテンプレートは、
<ul> <MTEntrySameCategory> <li><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></li> </MTEntrySameCategory> </ul>
ってな感じでMTEntriesと同じように使える。で、Pluginでそのタグを定義する。
MT::Template::Context->add_container_tag(EntrySameCategory => ¥&samecategory);
sub samecategory{
my($ctx, $args,$cond) = @_;
my $entry = $ctx->stash('entry');
my $blog_id = $entry->blog_id;
my $category_id = $entry->category->id;
my @entries = MT::Entry->load(undef, {
'join' => [ 'MT::Placement','entry_id',
{category_id => $category_id},
{ blog_id => $blog_id },]
});
local $ctx->{__stash}{entries} = [ @entries ];
return MT::Template::Context::_hdlr_entries($ctx,
{ sort_by => $args->{sort_by}, sort_order => $args->{sort_order} },
$cond);
}

