Indexmenu プラグイン

トラブルシューティング

名前空間の区切り文字をスラッシュにしている場合、新規ページの作成に失敗する

管理者としてログインした状態で Indexmenu上で右クリックすると、メニューから新規ページの作成ができる(作成用のURLに飛ぶ)。

しかし、名前空間の区切り文字をスラッシュにしている場合、この更新のために作成用のURLに飛ぶ処理が上手く動かなくなった。

  • 名前空間 aaa:bbb:ccc というページを作成する場合、これがページIDとなる
  • 区切り文字をスラッシュとしている場合、ページIDは aaa/bbb/ccc となる
  • ページIDは、エンコードされた上で、作成用のURLが生成される
  • 今までは encodeURI() なのでスラッシュはエンコードされなかったが、上記の更新で encodeURIComponent() に変更されたため、ページID部分のスラッシュがエンコードされるようになってしまった

あるべき設計についてはわからないが、

  • 区切り文字をスラッシュにしている場合でも、新規作成時のページIDは本来の区切り文字“:“が使われるべきで、上記の更新は正しく、ページIDとしてスラッシュが渡される実装の部分が間違っている?
  • ページIDとしてスラッシュが渡されるのは正常な動作で、上記の更新がそれを忘れて行われてしまった誤った更新である?

ひとまず、上記の更新を手動でロールバックすれば元に戻る。
(プラグインのjsを更新後、何でもよいので管理画面からサイト設定を更新することで、jsの更新が反映される)

dokuwiki/plugin/indexmenu.txt · 最終更新: 2024/02/10 by ikatakos
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0