さまよえる Movable Typeスレッド その1 に、溜まりに溜まっていい加減鬱陶しくなっちゃったアーカイブなどを分割表示する方法がありましたので、引用しておきます。要 PHP です。
<? <MTEntries> $entry[] = '<a href="<$MTEntryPermalink$>"><$MTEntryTitle></a>'; </MTEntries> if (empty($offset)) { $offset = 0; } echo "<ul>\n"; for($i = $offset; $i < $offset + 5; $i++) { if (isset($entry[$i])) { echo "<li>$entry[$i]\n"; } } echo "</ul>\n"; echo "page:"; $page = 1; for ($i = 0; $i <= count($entry); $i += 5) { if($i == $offset){ echo " [$page]"; } else { echo " <a href=\"$PHP_SELF?offset=$i\">$page</a>"; } $page ++; } ?>
ただこのままでは、PHP の設定ファイルで register_globals = on
としておかなければならず、そしてこれは off
にすることが推奨されているため、6-8 行目を書き換えてみます。
$offset = 0;
if (ereg("([0-9]{1,2})", $_ENV['QUERY_STRING'], $m)) $offset = $m[1];
これでたぶんオーケー。試してませんがたぶん大丈夫じゃないんかな?
麻衣 : Wed 10, 2003 16:10
追記。
$PHP_SELF も $_SERVER['PHP_SELF'] に変えないとダメだな。