« DynamicPublishing関係(?)のエラー対策(MTParentCategories)   カテゴリアーカイブに子カテゴリーを含む方法 »

カテゴリー内の前後のエントリーへのナビ(PHP)

May 26, 2005 22:08  [ Category, ]

エントリーについてカテゴリー内の前後のエントリーに移動するPluginとして

というものがある。
ただ、これはperlで書かれているのでダイナミック・パブリッシングにした場合には使えない。
そこで、これに対応するPHPバージョンのPluginが公開されている。

このPluginのままでは主カテゴリしかナビゲーションが表示されないため、Ruby site: 複数Categoryなページめくりを見ながら、なんとなくperlバージョンの修正方法をマネして修正してみたら、とりあえず動いたので、そのまま使っている。

Ruby siteさんでは

Ruby site: 複数Categoryなページめくり

PriviousNetInCategory.plのソースの中の _hdlr_entry_previous_in_categoryと_hdlr_entry_next_in_categoryのサブルーチンの中。 両方のサブルーチンの中にある

my $cat = $e->category
or return '';

の直後に

if($ctx->stash('category') ne '') {$cat = $ctx->stash('category');}

という行をそれぞれ追加しただけ♪

ということだったので

block.MTEntryNextInCategory.php と block.MTEntryPreviousInCategory.php の28行目にある

$cat = $ctx->mt->db->fetch_category($entry['placement_category_id']);

の直後に

if ($ctx->stash('category') != '') {
$cat = $ctx->stash('category');
}

を追加。
動いただけで理屈は分かってないので、保証は全くしない。

ちなみにスタティスティックの時に問題になる前後の記事の再構築に関してはダイナミック・パブリッシングの場合には対策不要。

【追記 2005.6.4】
うまく複数カテゴリーでエントリーが表示されているのは一部のケースのみで、後は問題があるようで、現状目的は達成できていないらしい。

注)trackbackをRuby Siteさんに送ったが、こちらの表示上エラーになったため、今後の送信ダブり防止に外したため備忘録としてここに注記。

Trackback


まだトラックバックは寄せられていません。

Comments

まだコメントは寄せられていません。

Post a comment

コメント投稿フォーム

情報をブラウザに保存しますか ?

コメントにHTMLタグは使えません。

 

[Plugin]前後の記事

« DynamicPublishing関係(?)のエラー対策(MTParentCategories)   カテゴリアーカイブに子カテゴリーを含む方法 »

XREAAD