make_relatedが毎回必ず呼び出されてしまう

メッセージ

BugTrack/28にも絡む問題だと思います。

html.php/inline2関数の

	$str = preg_replace("/#related/",make_related($vars["page"],TRUE),$str);

の行で、必ずmake_relatedが実行されてしまいます。

ここは、マッチしたときだけmake_relatedを評価するように

	$str = preg_replace("/#related/e","make_related(\$vars[\"page\"],TRUE)",$str);

としてはどうでしょうか。


以下余談

make_relatedを呼び出してほしくなかったので*1、pukiwiki.ini.phpで

// 関連するリンクを常に表示する(負担がかかります)
$related_link = 0;

と指定したんですが、それでもなおmake_relatedが呼ばれている。なぜだ…とソースを眺めていて発見しました。

しろくろのへや:FrontPageではこの変更で、7秒以上かかっていた処理時間が2秒弱 :) まで高速化しました。



*1 うちのサーバ、毎回全文検索されると重くてしょうがない環境ですから
*2 ヘルプ参照。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2002-07-30 (火) 20:40:04
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.563 sec.

OSDN