The forums are closed and will be removed when we launch our new site.
Looking for support? You can access the support system via your account.
-
AuthorSearch Results
-
September 17, 2020 at 6:13 am #259839
In reply to: The reset button is always there
TrevorModeratorAh. I guess it works, but I suspect it would not in ajax mode?
If you have access to the PHP template file that is the one that outputs the while loop (inside the products container), you could add some PHP and use that to include some CSS to hide the reset button, like this:
<?php global $searchandfilter; $sf_current_query = $searchandfilter->get(1234)->current_query(); if (!($sf_current_query->get_search_term()=="") { <? <style> .woof_submit_search_form_container {display: none;} </style> <?php } ?>
Note: you would need to change the ID number, and it looks like you don’t have a search box, so this should work.
BTW, I think you need to add style like this also (generally):
.woof_redraw_zone {display: flex;}
This will stop content from below bleeding on to the ‘menu/form’.
September 16, 2020 at 2:33 am #259571In reply to: Can’t Get a Results Count with Oxygen Builder
giveuptheghostParticipantLiterally figured this out directly after posting this. I’ll post my solution for anyone interested.
Here is the code I used in a PHP block to display the search term and a post count:
global $searchandfilter; $sf_current_query = $searchandfilter->get(678)->current_query(); echo $sf_current_query->get_search_term(); $the_query = new WP_Query(array( 'post_type' => 'courses', )); echo $the_query->found_posts; wp_reset_postdata();
Both before this code block and before the repeater that follows I put this shortcode (so twice):
[searchandfilter id=”YOURSEARCHID” action=”filter_next_query”]I had tried this almost exactly last night (except without any arguments for $the_query) but it didn’t work. The trick was that I had to filter “$the_query” by at least one argument, in this case post_type. If I left the arguments empty or passed an empty $args, the searchandfilter shortcode wouldn’t filter. I’m assuming that shortcode is just a pre_get_posts based on the filter parameters and there needs to be at least one parameter for pre_get_posts to work.
Either way, I believe I have it figured out – thanks for making a great plugin! It would be great to get more direct Oxygen Builder support in the future as it’s an amazing builder for people who can code but in the meantime, things are working so I’m happy!
August 25, 2020 at 7:37 pm #257288Topic: Get Field Options from Current Active Query
in forum Search & Filter Pro
Jesse HodgesParticipantI’m working with the active query ($searchandfilter->get($SAFId)->current_query()) and I’m hoping to programmatically get all of the options for one of the fields. Is there a good way to go about this?
August 21, 2020 at 10:42 am #256885In reply to: No search results
TrevorModeratorI apologise for the delay Jens, I ran out of time yesterday.
If you haven’t already done so, can you follow this guide:
https://searchandfilter.com/documentation/search-results/using-a-shortcode/
In particular, follow the instructions in the Customising section.
That will give you a
results.php
file you can edit, in a sub-folder namedsearch-filter
in your theme folder.Would you want to show that after you search? My guess is yes. So, look for this code in the results.php template file:
Found <?php echo $query->found_posts; ?> Results<br /> Page <?php echo $query->query['paged']; ?> of <?php echo $query->max_num_pages; ?><br />
And change that to (I think this will work):
global $searchandfilter; $sf_current_query = $searchandfilter->get(30408)->current_query(); if (!((!$sf_current_query->is_filtered())&&($sf_current_query->get_search_term()==""))) { Found <?php echo $query->found_posts; ?> Results<br /> Page <?php echo $query->query['paged']; ?> of <?php echo $query->max_num_pages; ?><br /> }
You can change anything else you want also. For example, to make the pagination look nicer, install the free WP-PageNavi plugin and delete these lines:
<div class="nav-previous"><?php next_posts_link( 'Older posts', $query->max_num_pages ); ?></div> <div class="nav-next"><?php previous_posts_link( 'Newer posts' ); ?></div>
August 18, 2020 at 8:56 am #256352In reply to: Query as a breadcrumb or similar
TrevorModeratorYou would need to code some PHP. As you are using the Shortcode display results method, start with this guide (if you have not already):
https://searchandfilter.com/documentation/search-results/using-a-shortcode/#customising-the-results
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
Note, if you are using Ajax refreshing of the results, any PHP needs to be inside the Ajax Container, or it will not update.
August 18, 2020 at 6:45 am #256340In reply to: is_paged() function no longer works
TrevorModeratorThe code we would normally recommend, so you may need to modify this, or may indeed have used this, is:
global $searchandfilter; $sf_current_query = $searchandfilter->get(1045)->current_query(); if ((!$sf_current_query->is_filtered())&&($sf_current_query->get_search_term()=="")) { // the unfiltered posts output code here } else { // the current (filtered) posts output code here }
August 18, 2020 at 2:47 am #256329In reply to: is_paged() function no longer works
Jessica SpataParticipantAmazing, this works perfectly, thank you!!
I’m using it to run a function to offset the number of posts on the first page, but only if the page is outputting the default/unfiltered loop. Is this the best way to check that?
global $searchandfilter; $filtered = $searchandfilter->get(1045)->current_query()->is_filtered(); if ( !is_admin() && $query->is_main_query() && is_home() && $filtered != 1 ) { ... }
August 6, 2020 at 11:41 am #255240In reply to: Alter Template After Filter Fires
TrevorModeratorThe PHP to use to conditionally run code looks like this (change the ID of the form to suit):
global $searchandfilter; $sf_current_query = $searchandfilter->get(1234)->current_query(); if ((!$sf_current_query->is_filtered())&&($sf_current_query->get_search_term()=="")) { // the current (unfiltered) posts output code here } else { // the desired (filtered) posts output code here }
July 31, 2020 at 12:45 pm #254727In reply to: Results count
Christian ThibaultParticipantTrevor,
It works.
$sf_current_query = $searchandfilter->get($id)->current_query();
$term = $sf_current_query->get_search_term();
$count = $wp_query->found_posts;Thank you,
Christian
July 31, 2020 at 12:17 pm #254718In reply to: Results count
TrevorModeratorYou will not find the count in the $sf_current_query array.
What display results method are you using?
-
AuthorSearch Results