I'm starting to get the hang of Low Search, but am still running into a bit of confusion.
So, I have my {exp:low_search:form}
and {exp:low_search:results}
tags up and working fine. When I search, for instance, using keywords, the resulting page has my keyword in the keywords field, and my {exp:low_search:param get="keywords" query="{segment_3}"}
tag is outputting the keyword, and my search results are valid.
However, if I create a shortcut for that exact search (created from the search log), my search results work fine, but my form doesn't have the values selected, and my param tag doesn't output anything...
Am I missing something, or is this just not yet a feature of Low Search? If I'm using a shortcut, how can I access the search parameters used so that I can have my field defaults set, and how can I display the params outside of the results tag?
I am using EE 2.9.0 and Low Search 3.2.0.
Thanks!
EDIT: Here is my {exp:low_search:form}
tag in it's entirety... My url is like /library/search/helen/
. I am seeing the correct search results in my results tag for this shortcut, but cannot set the pre-selected form fields for this search...
{exp:low_search:form
query="{segment_3}"
shortcut="{segment_3}"
result_page="library/search"
form_id="search"
}
<fieldset>
<div class="form-group">
<label for="keywords" class="the_label">Keywords</label>
<input type="search" name="keywords" class="form-control" value="{low_search_keywords}" placeholder="Keywords">
{if low_search_keywords_missing} Please enter keywords{/if}
<input type="hidden" name="collection[]" value="library_content">
<input type="hidden" name="loose_ends" value="right">
<input type="hidden" name="search_mode" value="auto">
</div> <!-- /.form-group -->
<div class="form-group">
<label for="keywords" class="the_label">State / Territory</label>
<select name="search:library_state_territory" id="option" class="form-control">
<option value="">-- Select State / Territory --</option>
{exp:low_options:library_state_territory channel="library_content"}
{if option:group != ''}<optgroup label="{option:group}">{/if}
{options}
<option value="{option:value}"{if option:value == low_search_search:library_state_territory} selected{/if}>
{option:label}
</option>
{/options}
{if option:group != ''}</optgroup>{/if}
{/exp:low_options:library_state_territory}
</select>
</div> <!-- /.form-group -->
<div class="form-group">
<label for="tag-group-2" class="the_label">Type</label><br />
<select name="tag_name:group2[]" id="tag-group-2" size="5" multiple class="form-control">
{exp:tag:cloud groups="1" tag_group_id="2"}
<option value="{tag_name}"{if low_search_tag_name:group2 ~ '/(^|\|)'.tag_name.'($|\|)/'} selected{/if}>
{tag}
</option>
{/exp:tag:cloud}
</select>
</div> <!-- /.form-group -->
<div class="form-group">
<label for="date_range" class="the_label">Date range</label>
<div class="input-daterange input-group" id="datepicker">
<input type="text" class="input-sm form-control" name="range-from:library_date_published" value="{low_search_range-from:library_date_published}"/>
<span class="input-group-addon">to</span>
<input type="text" class="input-sm form-control" name="range-to:library_date_published" value="{low_search_range-to:library_date_published}"/>
</div>
</div> <!-- /.form-group -->
<div class="form-group">
<label for="tag-group-4" class="the_label">Population Group</label><br />
<select name="tag_name:group4[]" id="tag-group-4" size="5" multiple class="form-control">
{exp:tag:cloud groups="1" tag_group_id="4"}
<option value="{tag_name}"{if low_search_tag_name:group4 ~ '/(^|\|)'.tag_name.'($|\|)/'} selected{/if}>
{tag}
</option>
{/exp:tag:cloud}
</select>
</div> <!-- /.form-group -->
<button type="submit">Search</button>
</fieldset>
{/exp:low_search:form}
Also, I have these tags set up to display the currently used search filters... but they don't work with the shortcut either.
<div id="active-search-filters-container" class="clearfix">
<label class="pull-left">Search Parameters:</label>
{if '{exp:low_search:param get="keywords" query="{segment_3}" shortcut="{segment_3}"}' != ''}
<div data-member-id="1" class="search-parameter keyword">
<button type="button" class="btn btn-default btn-xs">
<strong>Keyword(s):</strong> {exp:low_search:param get="keywords" query="{segment_3}"}
{!--<span class="glyphicon glyphicon-remove"></span>--}
</button>
</div>
{/if}
{if '{exp:low_search:param get="search:library_state_territory" query="{segment_3}" shortcut="{segment_3}"}' != ''}
<div data-member-id="1" class="search-parameter state">
<button type="button" class="btn btn-default btn-xs">
<strong>State:</strong> {exp:low_search:param get="search:library_state_territory" query="{segment_3}"}
{!--<span class="glyphicon glyphicon-remove"></span>--}
</button>
</div>
{/if}
{if '{exp:low_search:param get="range-from:library_date_published" query="{segment_3}" shortcut="{segment_3}"}' != ''}
<div data-member-id="1" class="search-parameter date-range">
<button type="button" class="btn btn-default btn-xs">
<strong>Date Range:</strong> {exp:low_search:param get="range-from:library_date_published" query="{segment_3}"}
{if '{exp:low_search:param get="range-to:library_date_published" query="{segment_3}"}' != ''}
- {exp:low_search:param get="range-to:library_date_published" query="{segment_3}"}
{/if}
{!--<span class="glyphicon glyphicon-remove"></span>--}
</button>
</div>
{/if}
{if '{exp:low_search:param get="tag_name:group2" query="{segment_3}" shortcut="{segment_3}"}' != ''}
<div data-member-id="1" class="search-parameter type">
<button type="button" class="btn btn-default btn-xs">
<strong>Type:</strong> {exp:low_search:param get="tag_name:group2" query="{segment_3}"}
{!--<span class="glyphicon glyphicon-remove"></span>--}
</button>
</div>
{/if}
{if '{exp:low_search:param get="tag_name:group4" query="{segment_3}" shortcut="{segment_3}"}' != ''}
<div data-member-id="1" class="search-parameter pop-group">
<button type="button" class="btn btn-default btn-xs">
<strong>Population Group:</strong> {exp:low_search:param get="tag_name:group4" query="{segment_3}"}
{!--<span class="glyphicon glyphicon-remove"></span>--}
</button>
</div>
{/if}
</div> <!-- /#active-search-filters-container -->