IdeaLog
調査記録
GET アクセス時別名
read プラグインで、ページがなければ、編集、ではなく、:config/PageAlias かなにかを読み込んで、 「もしかして、このページ?」のように出力する。
1つしか候補がない場合はいきなりリダイレクトしてもよい。
ページがあるときは今までどおりの動作なので負荷は増えない。
メモ :config/PageAlias
|別名|本命| |別名|本命|
if (is_page(':config/PageAlias')) { $config = new Config('PageAlias'); $config->read(); print_r($config->get('')); }
[0] = array(別名, 本命) [1] = array(別名, 本命)
ただのテーブルだし自力でやったほうが早いかな。
[[]] リンク時別名
被った場合、どうしてるんだろ。
とりあえず、:config/PageAlias を読んで、キーがあったら、そこに飛ばして、 あとは read プラグインにまかせる?
となると、get_existpages() で、別名も加えて返すようにすれば、他は何の編集もなく可能か?
is_page(別名) -> true も必要か。→だめ。read プラグインで is_page(ページ名) が false ならエイリアス処理をする。
is_alias などを作ってきちんと処理を分けて、少しずつ対応。
http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/pukiwikimod/pukiwiki/file.php?r1=1.38&r2=1.39
うむ、array_merge しているみたいだね。
AutoAlias は AutoAliasName というページを使用しているので再利用?不都合はないだろうか・・・
[[]] なリンクがはれないらしいが、上のような手法でできるのでは?
ちなみに AutoAlias は「同じ単語に対する設定が複数あった場合、先に登場したものが採用されます。」
GET アクセス時別名があれば絞らなくてもすむな。
手っ取り早いのは
AutoAlias は AutoAlias で使用してしまう。
index.php?別名、でアクセスできるように read プラグインをちょっといじる。
設定は AutoAliasName を利用させてもらう lib/func.php#get_autoaliases($word = '')
先に登場したものを採用する、と限定すればとりあえずこれで終了。