2007-10-28 Sun
Nucleusは標準で検索機能が使えますが、検索HIT数を知る術がありません。肉少なめのNKJGさんがNP_SearchHitsというプラグインを作成しておられますが、Nucleusの検索項目を拡張してくれる素晴らしいプラグイン「NP_ExtensibleSearch」を使って、検索HIT数を取得できるように改造してみました。
NP_ExtensibleSearchの「search」関数内153行目あたりに「return $amountfound;」があります。この直前に*1139行目あたりに「$amountfound = $blog->showUsingQuery($template, $sqlquery, $highlight, 1, 1);」があります。この直後に
if ($template == 'count') {
echo $amountfound;
return true;
}
と記述します。後は検索HIT数を表示させたいスキンに
<%ExtensibleSearch(count)%>
とするだけです。実際に「count」というテンプレートを作成する必要はありません。
なんか不細工な実現方法ですが、目的は達成できているのでまあいいかなと。
ちなみにExtensibleSearchの検索結果表示数のデフォルト値は50です。これを変更している場合、HIT数の表示数も同じにする必要があリます。例えば検索結果数を100としている場合、検索結果リストは
<%ExtensibleSearch(templateName,100)%>
となりますので、HIT数表示も
<%ExtensibleSearch(count,100)%>
としてください。
« Old 2007-10-15
NP_RandomNumber|乱数を発生
2007-10-28 New »
NP_znItemFieldEX|URLエンコードを追加