Namazu-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 検索結果 Results: 等を非表示にする方法
- From: Youichi Iwakiri <yiwakiri@xxxxxxxxxxxx>
- Date: Wed, 04 Oct 2000 17:55:54 +0900
- X-ml-name: namazu-users-ja
- X-mail-count: 01027
- References: <39D4A663316.2509KEN@210.226.40.181>
いわきりです。
Ken Oisawaさんの<39D4A663316.2509KEN@xxxxxxxxxxxxxx>から
> 検索結果でたとえば
>Results:
>References: [ 単語: 2 ]
>Total 2 documents matching your query.
>や
>Current List: 1 - 2
>Page: [1]
>などと表示されます。これを非表示にしたいのですが、可能でしょうか。
これらの処理は、namazu-cgi.c(form.cだったかな?)の中に
ハードコーディングされているので直接直すか、libnmzを直接
利用するアプリケーションを用意した方が早いと思います。
PHP4(www.php.gr.jpから辿れます)が利用できるのでしたら
塚田さんと言う方がPHP用のNamazuモジュールを提供されていますので
導入してください。
それを利用するPHPスクリプトを私もサンプルとして書いたものが
あるので試されてはいかがでしょうか?
適当に直せば好きなように結果の表示が出来るようになります。
下記のようなスクリプトで制御できます。
下記URLで取得できます。
http://datula.mio.org/~iwakiri/php_nmz_sample.tar.gz (size: 4992 byte)
--
<script language="php">
// main
// load_nmz_extentions();
require('./namazu.inc');
$nmz = new namazu(basename($SCRIPT_FILENAME));
$msg0 = array (
// __NMZ_NHITS__ は、現状ハードコーディングしているので
// 適当にnamazu.incを修正してください
'',
'<hr>',
'<h2>検索結果</h2>',
'<p><strong>検索式にマッチする __NMZ_NHITS__ 個の文書が見つかりました。</strong></p>',
'<dl>'
);
// $msg1 = load_file("/home/iwakiri/pgsql_jp/index/NMZ.tips.ja");
$msg1 = load_file("/usr/local/share/namazu/template/NMZ.tips.ja");
$msg2 = array (
'',
'<hr>',
'<h2>検索結果</h2>',
'<p><strong>検索式が長過ぎるため、検索を中止しました。</strong></p>'
);
$msg3 = array (
'',
'<hr>',
'<h2>検索結果</h2>',
'<p><strong>ERROR: システムの設定を見直してください。</strong></p>'
);
$global_conf = '/usr/local/etc/namazu/namazurc';
$local_conf = dirname($SCRIPT_FILENAME) . '/.namazurc';
$rc_file = array ($global_conf, $local_conf);
// Namazu startup fileの読み込み
$nmz->load_rc($rc_file);
// Template is output format files
// $nmz_template($header, $result_normal, $result_short, $footer)
// 空の場合、rc_fileの設定に従う
$nmz->load_template('', '', '', '');
// $nmz->open(), $nmz->search()の返り値に従い、出力する
// メッセージを登録
$nmz->regist_message('success', $msg0);
$nmz->regist_message('empty_query', $msg1);
$nmz->regist_message('long_query', $msg2);
$nmz->regist_message('sys_error', $msg3);
// 検索結果の表示方法を制御
$nmz->set_parm('Paging', 'on');
$nmz->set_parm('Emphasis', 'on');
if (isset($whence) ) $nmz->set_option('whence', $whence );
if (isset($max) ) $nmz->set_option('max', $max );
if (isset($result) ) $nmz->set_option('result', $result );
if (isset($sort) ) $nmz->set_option('sort', $sort );
if (isset($query) ) $nmz->set_option('query', $query );
if (isset($subquery)) $nmz->set_option('subquery', $subquery);
// namazu_core routine
$result = $nmz->open();
if ($result == 'success') {
$result = $nmz->search();
}
$nmz->output_header();
$nmz->output_message($result);
if ($result == 'success') {
$nmz->output_result();
}
$nmz->output_footer();
$nmz->close();
</script>