サポート
総合検索ページで検索条件を追加できますか
miya (2016/04/26 13:06)
設置URL : http://mobelhandler.com/
上記の総合検索のページにおいて、
検索対象オプションは
すべてorエントリーorページの3つの選択がデフォルトですが
追加条件で、特定ID(ギャラリー%/)のページに範囲をしぼって検索できますでしょうか?
■デフォルトの検索条件
すべて
エントリー
ページ
上記に加えてgalleryという名がついたページIDのみから検索(追加できますか)
(page_id" value="gallery/%")←このような条件を追加することは、下記タグに追加で出きるのでしょうか・・・
<select name="target">
<option value="">すべて</option>
<option value="entry"{if $smarty.get.target == 'entry'} selected="selected"{/if}>ブログ内</option>
<option value="page"{if $smarty.get.target == 'page'} selected="selected"{/if}>ページ全体</option>
</select>
(トピックをまたいで質問してしまい申し訳ありません。)
ミツ (2016/04/27 14:18)
URL : http://32877.xii.jp
こんにちは。
あくまで一案になりますが、[freo/templates/plugins/search/default.html]の9~18行目
<!--{if !$smarty.get.page_name}-->
<dt>検索対象</dt>
<dd>
<select name="target">
<option value="">すべて</option>
<option value="entry"{if $smarty.get.target == 'entry'} selected="selected"{/if}>エントリー</option>
<option value="page"{if $smarty.get.target == 'page'} selected="selected"{/if}>ページ</option>
</select>
</dd>
<!--{/if}-->
を、
<dt>検索対象</dt>
<dd>
<select name="target" id="selectTarget">
<option value="">すべて</option>
<option value="entry"{if $smarty.get.target == 'entry'} selected="selected"{/if}>エントリー</option>
<option value="page"{if $smarty.get.target == 'page'} selected="selected"{/if}>ページ</option>
</select>
<div id="search_pid">
<input type="hidden" name="page_name" id="page_name" value="検索画面に表示させたい文字列" />
<label for="page_id"><input type="checkbox" name="page_id" id="page_id" value="絞り込みたいページID" {if $smarty.get.page_id} checked{/if} />ギャラリーのみ検索</label>
</div>
</dd>のように変更してください。
また、[freo/js/default.js]など、search画面で読み込んでいるJS内に、
$(function(){
var defaultVal = $('#page_name').val();
if ($('#selectTarget option:selected').val() == 'page') {
$('#search_pid').show();
} else {
$('#search_pid').hide();
$('#page_name').val('');
}
$('#selectTarget').change(function(){
var val = $(this).val();
if (val == 'page') {
$('#search_pid').show();
} else {
$('#search_pid').hide();
}
});
$('#page_id').change(function() {
if ($(this).is(':checked')) {
$('#page_name').val(defaultVal);
} else {
$('#page_name').val('');
}
});
});のように加筆してください。
miya (2016/04/30 17:04)
ミツさん、本当にたすかりました!ありがとうございました
返信
- この記事に返信します。
- 返信の際は、設置URL以外の項目は入力必須です。