-
AuthorSearch Results
-
May 29, 2019 at 10:12 am #212706
TrevorParticipantIf I understand you correctly, you need to output the currently searched for term(s) on the results page. To an extent, this is limited by how the page is constructed, but as long as you have a PHP template and know how to edit/code that, you should be able to achieve what you want.
To show the filters, as I said, this requires custom coding when using the current version of Search & Filter Pro. You can access the filter terms though, but would need further PHP work to display them. To fetch the search terms, the https://searchandfilter.com/documentation/accessing-search-data/ guide is basic but you can extend the idea to grab lots of other data. If you have other filters, then it becomes a little more complex, but I can give you links. This thread might help you:
https://support.searchandfilter.com/forums/topic/accessing-field-slug-on-search-results/
… and this search will give similar threads I think:
https://support.searchandfilter.com/forums/search/sf_current_query+get_array+field+%5Bvalue%5D/
Note, if you are using Ajax refreshing of the results, any PHP needs to be inside the Ajax Container, or it will not update.
May 22, 2019 at 10:48 am #211977
AnonymousInactiveHi.
OK so originally i had the Search & Filter (none pro ) version installed, so i have just installed the Pro version and started to set up the first form, using all the options etc.On the General Tab I set it to my ‘Lab Test’ custom posts.
Display Results i set it to ‘Post Type Archive’, but i can change that back to ‘Using A Shortcode’ if that is easier? And then on my Archive page add the code you suggested?
My current code is simply this (when i used the none pro version)
<div class=”search”><?php echo do_shortcode( ‘[searchandfilter fields=”search” search_placeholder=”Enter a Batch No” submit_label=”Search” post_types=”,labtests”]’ ); ?></div>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div><?php the_title(); ?></div>
<?php endwhile; ?>
<?php else : ?>
<?php endif; ?>So should it be set to Use Shortcode, then change the code like this:
<?php
global $searchandfilter;
$sf_current_query = $searchandfilter->get(284)->current_query();
if ((!$sf_current_query->is_filtered())&&($sf_current_query->get_search_term()==””)) {
echo ‘<div>Nothing to see here folks!</div>’;
} else {
if (have_posts()) : while (have_posts()) : the_post();
}?>
May 22, 2019 at 10:23 am #211969
TrevorParticipantI need to know if you have this set as shown here:
https://www.screencast.com/t/jVW9z2FJ
If it is, then the results.php needs to be modified like this (where I have used the ID number of your form):
global $searchandfilter; $sf_current_query = $searchandfilter->get(85204)->current_query(); if ((!$sf_current_query->is_filtered())&&($sf_current_query->get_search_term()=="")) { echo '<div>Nothing to see here folks!</div>'; } else { // your current results.php code here }
Make sure any files you modify are in the child theme folder (if you copy our results.php file, it needs to be in a sub-folder of the child theme, called search-filter, not our plugin folder or a parent theme folder). Do NOT edit the copy of results.php that is in our plugin templates folder, as it will be overwritten by updates.
May 21, 2019 at 3:46 pm #211828In reply to: Check to see if anything has been searched
TrevorParticipantThe third line would be:
if ((!$sf_current_query->is_filtered())&&($sf_current_query->get_search_term()=="")) {
So the first do something is if nothing has been searched.
May 17, 2019 at 2:41 pm #211578
TrevorParticipantYou would have to couple that with a test to see if the page is filtered. I am not sure of the code, but it would be something like this (replace the 12345 with the ID of the form):
global $searchandfilter; $sf_current_query = $searchandfilter->get(12345)->current_query(); if ((!$sf_current_query->is_filtered()) .....
That might work.
May 14, 2019 at 1:30 pm #211140
AnonymousInactiveI have another topic regardless this one.
For example, my search query have custom taxonomy named “product_type”.
I’m using this line to retrive what kind of “product_type” is retrived right now:
$searchProductType = $sf_current_query->get_field_string("_sft_product_type");
However, is there any option to get ID of searched taxonomy instead of “Product Type: Name” ?
May 10, 2019 at 11:42 am #210744In reply to: can i get value in result url $get['key']
TrevorParticipantTo showing the filters, this requires custom coding when using the current version of Search & Filter Pro. You can access the filter terms though, but would need further PHP work to display them. To fetch the search terms, the https://searchandfilter.com/documentation/accessing-search-data/ guide is basic but you can extend the idea to grab lots of other data. If you have other filters, then it becomes a little more complex, but I can give you links. This thread might help you:
https://support.searchandfilter.com/forums/topic/accessing-field-slug-on-search-results/
… and this search will give similar threads I think:
https://support.searchandfilter.com/forums/search/sf_current_query+get_array+field+%5Bvalue%5D/
Note, if you are using Ajax refreshing of the results, any PHP needs to be inside the Ajax Container, or it will not update.
May 9, 2019 at 12:20 pm #210565
TrevorParticipantAs you are using our Shortcode Display Results method, then the results.php needs to be modified like this (where I have used the ID number of your form):
global $searchandfilter; $sf_current_query = $searchandfilter->get(85204)->current_query(); if ((!$sf_current_query->is_filtered())&&($sf_current_query->get_search_term()=="")) { echo '<div>Nothing to see here folks!</div>'; } else { // your current results.php code here }
Make sure any files you modify are in the child theme folder (if you copy our results.php file, it needs to be in a sub-folder of the child theme, called search-filter, not our plugin folder or a parent theme folder). Do NOT edit the copy of results.php that is in our plugin templates folder, as it will be overwritten by updates.
I am not sure what you mean by #2? Is the page URL you have given me not the default search page, or do you mean the one your theme uses?
May 8, 2019 at 7:49 pm #210543In reply to: Results per page with query data
AnonymousInactiveI was hoping that
current_query()
will also reflect the filters/pagination when I found the function; but I figured using result template might be easier to establish everything I need.Thank you so much for your help!
April 25, 2019 at 5:29 pm #209353In reply to: How to display filtered results count and filters?
TrevorParticipantInstead of this:
echo $sf_current_query->get_fields_html(array("_sft_category"), $args);
this:
$my_category_array = $sf_current_query->get_fields_html(array("_sft_category"), $args);
And then manipulate, I think. For this you would need to find some snippets, on a site like stackexchange.
-
AuthorSearch Results