Forums Forums Search Search Results for 'current_query'

Viewing 10 results - 121 through 130 (of 344 total)
  • Author
    Search Results

  • Trevor
    Participant

    If 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.


    Anonymous
    Inactive

    Hi.
    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();
    }

    ?>


    Trevor
    Participant

    I 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.

    #211828

    Trevor
    Participant

    The 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.


    Trevor
    Participant

    You 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.

    #211140

    Anonymous
    Inactive

    I 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” ?

    #210744

    Trevor
    Participant

    To 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.


    Trevor
    Participant

    As 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?

    #210543

    Anonymous
    Inactive

    I 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!

    #209353

    Trevor
    Participant

    Instead 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.

Viewing 10 results - 121 through 130 (of 344 total)