バージョン | 1.4.3 |
---|---|
投稿者 | evi |
状態 | 提案 |
投稿日 | 2004-07-07 (WED) 20:21:56 |
あるページ(仮にtest)に別名(仮にテスト)をつけて、どちらの名前でBracketNameを指定されても、あるページ(test)に遷移させる事が出来るようなプラグインです。
よく、ホームページが移動した時に、元のページに自動で移動先にジャンプする仕組みを使ってますが、ああいうのをイメージしています。(自動で飛んでる様子は見えない方が良い)
例:
あるページ「利用者/一般/ほげ」があって、このページに別名として「ほげ」を定義できます。
利用者/一般/ほげ と書いても ほげと書いても、リンクをクリックすると「利用者/一般/ほげ」に遷移する。
「ほげ」というページを作って、中身は「利用者/一般/ほげ」をインクルードすれば同様の事が実現できるんですが、ページが増えたり、ページを作るのが面倒くさいという・・・。(別名付けるのは面倒くさくないのか?と突っ込まれそうですが)
プラグインというより本体の機能として考えるのはどうでしょうか。「中身が一行一単語かつ、完全なページ名(WikiNameあるいはブラケットで囲んだBracketName)」であれば、「pukiwiki.php?page=そのページ名&as=元のページ名」というページに飛ばす、という感じですね。
ページに例えば #as(転送するページ名) とあると「pukiwiki.php?plugin=as&page=そのページ名&as=元のページ名」というページに飛ばす、という実装では、転送前のページのデータ量や#asの位置が予測できませんから、機能として安定する様に思えません。
なんかすごく既視感を…続・質問箱/139、続・質問箱/169、自作プラグイン/alias.inc.php。
BracketNameに関してプラグインだけで解決することは無理でしょう。本体の改造が必要です。多分。
別名付与を一定の書式で:config/aliasに登録しておき、&hoge(エイリアスページ名);を[[実ページ名]]したのと同等な出力にするプラグイン程度なら大したことはないと思われますが、それでは実用性は乏しいでしょうね…
これまでに、何度となく要望されている機能ですね。1対1対応の別名に限定すればそれほど問題無いかと思うのですが、別名である以上、普通は多対1対応であって、そうなると色々問題が出てくるんですよね。実現させようと思うと、次期バージョン(PukiWiki1.5 or PukiWiki2)で本体に組み込む形になるでしょう。これまた何度となく要望されている、URLの短縮にも活用できる機能なので(ページ名を短くしておいて、別名で長いタイトルを与える)、何とかうまく折り合いがつかないかと、考えてはいるのですが・・・。
ユーザ定義をWeb上から追加できるプラグインというのは邪道すぎでしょうか。別名と対象ページを指定したら$line_rulesに'ほげ'=>'<a href="「利用者/一般/ほげ」のURL">ほげ</a>'を追加してくれるというような感じで。
ちょっとdev:BugTrack/605とどっちに送ろうか迷いましたが、ここに書きます。ニュアンスが違うかもしれませんが別からアプローチかけています。→ページタイトルを自由につけるように拡張*1