#author("2017-10-27T07:19:04+09:00","","") #author("2017-10-27T07:19:36+09:00","","") * 編集時に整形ルールを表示していると、その部分で相対リンクや凍結の判定などをミスしている [#eff6e61b] - ページ: [[BugTrack2]] - ページ: [[BugTrack]] - 投稿者: 名無しさん - 優先順位: 普通 - 状態: 提案 - 状態: 完了 - カテゴリー: 本体バグ - 投稿日: 2007-11-14 (水) 00:16:33 - バージョン: - バージョン: 1.4.7 - リリース予定バージョン: 1.5.2 ** メッセージ [#y14f388f] 編集中に「テキスト整形のルールを表示する」を選んだ時はcatrule() を呼び出していますが、&br;$vars['page'] を修正していないので、今編集しているページ名を相対リンクや凍結判定の基準にしてしまっています。 なので、見出し横のアンカー表示のリンク先が編集中のページ名になっていたり、整形ルールのページを凍結していても'#nofollow: Page not freezed' と表示されてしまいます。 include プラグインを参考に、include プラグインがなくても動く修正を考えてみました。 [[cvs:lib/func.php]] (1.93) function catrule() { - global $rule_page; + global $rule_page, $get, $post, $vars; if (! is_page($rule_page)) { return '<p>Sorry, page \'' . htmlspecialchars($rule_page) . '\' unavailable.</p>'; } else { - return convert_html(get_source($rule_page)); + $root = isset($vars['page']) ? $vars['page'] : ''; + $get['page'] = $post['page'] = $vars['page'] = $rule_page; + $text = convert_html(get_source($rule_page)); + $get['page'] = $post['page'] = $vars['page'] = $root; + return $text; } } -------- - [[BugTrack/2266]] の対応で編集中の「テキスト整形のルールを表示する」では別ページを表示するようになりました。完了とします -- [[umorigu]] &new{2017-10-27 (金) 07:19:04}; #comment