フリーCGIスクリプト配布サイト。
HTMLファイルに以下のように記述することで検索システムを直接起動することができます。デザインはお好みに合わせて記述してください。
なお、HTMLファイルの文字コードはUTF-8Nにしておきます。
<form action="http://~検索システムへのパス~/search.cgi" method="get">
<fieldset>
<legend>検索フォーム</legend>
<input type="hidden" name="mode" value="search" />
<input type="hidden" name="target" value="" />
<input type="hidden" name="cond" value="and" />
<input type="hidden" name="distinct" value="on" />
<dl>
<dt>キーワード</dt>
<dd><input type="text" name="word" size="20" value="" /></dd>
</dl>
<p><input type="submit" value="検索する" /></p>
</fieldset>
</form>
設定項目の『検索設定』にある以下の部分で検索を許可するファイルの拡張子を指定することができます。拡張子はいくつでも指定することができます。
#検索対象ファイルの拡張子
@{$init->{search_ext}} = (
'.html',
'.htm',
'.shtml',
'.shtm'
);
設定項目の『検索設定』にある以下の部分で検索を禁止するディレクトリを指定することができます。ディレクトリはいくつでも指定することができます。
#検索禁止ディレクトリ
@{$init->{forbid_dir}} = (
'secret',
'forbid',
'',
'',
'',
'',
'',
'',
'',
''
);
設定項目の『検索設定』にある以下の部分で対象を限定した検索の設定ができます。
#対象指定検索の使用(0 … 使用しない / 1 … 使用する)
$init->{target_mode} = 0;
#対象指定検索の設定(対象指定検索機能を使用しない場合は無効)
@{$init->{target_dir}} = (
'../contents_a/', 'コンテンツA',
'../contents_b/', 'コンテンツB',
'../contents_c/', 'コンテンツC',
'', '',
'', '',
'', '',
'', '',
'', '',
'', '',
'', '',
);
機能を利用するには $init->{target_mode}
を 1
に設定し、@{$init->{target_dir}}
で対象を設定します。対象ディレクトリの相対パス、コンテンツ名、をセットで記述します。
設定項目の『検索設定』にある以下の部分でインデックス検索の設定ができます。
#インデックス検索の使用(0 … 使用しない / 1 … 使用する)
$init->{index_mode} = 0;
#インデックスのリンクフォーマット(インデックス検索を使用しない場合は無効)
$init->{link_format} = '<h2 id="(.*)">.*<\/h2>';
#インデックスのフォーマット(インデックス検索を使用しない場合は無効)
$init->{index_format} = '<h2 id=".*">(.*)<\/h2>';
機能を利用するには $init->{target_mode}
を 1
に設定します。対象ファイルに <h2 id="test">テスト項目</h2>
という項目があれば、個別に検索を行います。この場合、各リンクは必ず <h2 id="見出し名">項目名</h2>
という形式で記述します。
上記のフォーマット以外で記述する場合、$init->{link_format}
と $init->{index_format}
のフォーマットは、Perl の正規表現で指定します。抽出したい文字列を後方参照するように記述します。
正規表現とは、具体的には以下のようなルールになります。