Movable Type入門 » カスタマイズ 上級編

特定カテゴリーを昇順で2列表示

前半分表示
1 ayanpaのデザインうんちく 様
2 突撃!不動産投資入門 様
3 スローライフな日常 様
4 アフィリエイトエッセンス様
5 ミネラルウォーターナビ 様
6 中国茶のススメ 様
7 某企業様からの下請け作業
8 写真画像系の個人サイト様
9 育児サイト SmileDays様 
後半分表示
10 某デザイン会社様の下請け作業
11 NGO法人 様
12 某広告会社 様
13 スパム対策によるアップグレード
14 個人サイト様 (FC2データ移行)
15 +αOL主婦の節約生活 
16 JALマイレージお得に貯め隊 
17 働くママyuzuの貯金箱さんのMT化

物販サイトで意外と要望の多い使い方かと思います。
とりあえずphpとjavascriptで試してみました。
<?php
<MTCategories>
<MTFilterCategories include="作成事例">
$sousu=<$MTCategoryCount$>;
</MTFilterCategories>
</MTCategories>
echo $sousu;
$half = ceil($sousu/2);

$i=0;
<MTEntries category="作成事例" sort_order="ascend">
$i=$i+1;
$arytitle[$i]='<$MTEntryTitle$>';
echo $i.' '. $arytitle[$i].'<br/>';
</MTEntries>
echo '前半分表示<br />';
for($i=1;$i<=$half;$i++){
echo $i.' '.$arytitle[$i].'<br/>';
}

echo '後半分表示<br />';
for($i=$half+1;$i<=$sousu;$i++){
echo $i.' '.$arytitle[$i].'<br/>';
}

?>

仕様
MTFilterCategoriesのプラグインを使っています。
・ceilは切り上げの関数なので、総数が奇数、偶数でも対応しています。

javascript版

<SCRIPT LANGUAGE="JavaScript">

<MTCategories>
<MTFilterCategories include="作成事例">
var sousu=<$MTCategoryCount$>;
</MTFilterCategories>
</MTCategories>

document.writeln("総数" +sousu);
var half=Math.round(sousu/2);
document.writeln("半分" +half);

var arytitle= new Array(sousu);

var i=0;
<MTEntries category="作成事例" sort_order="ascend">
i=i+1;
arytitle[i]='<$MTEntryTitle$>';
document.writeln(arytitle[i]+"<br />");
</MTEntries>

document.write("前半分表示<br />");
for(i=1;i<=half;i++){
document.writeln(i+" "+arytitle[i]+"<br />");
}

document.write("後半分表示<br />");
for(i=half+1;i<=sousu;i++){
document.writeln(i+" "+arytitle[i]+"<br />");
}

</SCRIPT>