Forums Forums Search & Filter Pro Select Box Like Ted

Viewing 10 posts - 1 through 10 (of 10 total)
  • Anonymous
    #173245

    I want to setup a select box like they have on TED (https://www.ted.com/talks) and was wondering if this was possible with this plugin. It uses the dropdown as a way to add filters, then you remove by manually clicking the x on the filter.

    Trevor
    #173347

    Whilst it is not possible to replicate that exactly, maybe something similar? In WP Admin -> Search & Filter -> Settings -> JavaScript & CSS -> Combobox Script set this to Select2.

    Then, in the field/dropdown settings in the form, enable the combobox setting.

    Anonymous
    #173514

    I believe found a workaround by using checkboxes and creating a controller select dropdown.

    Anonymous
    #173533

    so follow up question, on the page https://www.designsandcode.com/documentation/search-filter-pro/accessing-search-data/ you discuss how to list out categories and it works wonderfully. How can we do this for _sf_post_type?

    Trevor
    #173724

    Assuming that Post Type is one of the search fields, it should work in exactly the same way. If it does not, you need to print out the entire search/filter array and examine the structure, like this:

    $sf_current_query_array = $searchandfilter->get(1446)->current_query()->get_array();
    echo '<pre>';
    print_r($sf_current_query_array);
    echo '</pre>';

    Change the ID accordingly for your form.

    And then check to see if the terms you need are contained in that.

    Anonymous
    #173861

    This is the output (the terms are there for post_types—pages and practices) but I can’t seem to display it with in the same manner as the categories.

    <?php $args = array(
    	"str" 					=> '<ul class="filters-list"><li>%2$s<i class="fa fa-times"></i></li></ul>', 
    	"delim" 				=> array('<i class="fa fa-times"></i></li> <li>', '–'), 
    	"field_delim"				=> ' , ', 
    	"show_all_if_empty"			=> false 
    						);
    						
    echo $sf_current_query->get_fields_html(
    	array("_sft_category","post_types"), 
    	$args
    ); 
    												
    echo '<pre>';
    print_r($sf_current_query);
    echo '</pre>';
    ?>

    output:

    Search_Filter_Active_Query Object
    (
    [sfid] => 299
    [is_set:Search_Filter_Active_Query:private] => 1
    [query_array:Search_Filter_Active_Query:private] => Array
    (
    [_sft_category] => Array
    (
    [name] => Categories
    [singular_name] => Category
    [all_items_label] => All Categories
    [type] => taxonomy
    [active_terms] => Array
    (
    [0] => Array
    (
    [id] => 56
    [name] => Community Development
    [value] => community-development
    [count] => 5
    )

    [1] => Array
    (
    [id] => 57
    [name] => Environment
    [value] => environment
    [count] => 1
    )

    )

    )

    [post_types] => Array
    (
    [name] => Post Types
    [singular_name] => Post Type
    [all_items_label] => All Post Types
    [type] => post_type
    [active_terms] => Array
    (
    [0] => Array
    (
    [name] => Practices
    [value] => practice
    )

    )

    )

    )

    [form_fields:Search_Filter_Active_Query:private] => Array
    (
    [search] => Array
    (
    [type] => search
    [heading] =>
    [placeholder] => Search …
    [accessibility_label] => Enter Your Search Terms
    )

    [_sft_category] => Array
    (
    [type] => category
    [input_type] => checkbox
    [heading] =>
    [accessibility_label] => Select A Topic From The List
    [all_items_label] => Topics
    [show_count] => 0
    [hide_empty] => 1
    [hierarchical] => 0
    [include_children] => 0
    [drill_down] => 0
    [sync_include_exclude] => 1
    [combo_box] => 1
    [no_results_message] =>
    [operator] => and
    [order_by] => default
    [order_dir] => asc
    [exclude_ids] =>
    [taxonomy_name] => category
    )

    [post_type] => Array
    (
    [post_types] => Array
    (
    [page] => 1
    [practice] => 1
    )

    [type] => post_type
    [input_type] => select
    [heading] =>
    [all_items_label] => All Types
    [accessibility_label] => Select Section Type From The List
    [combo_box] => 0
    [no_results_message] =>
    )

    )

    [query_str:Search_Filter_Active_Query:private] => -1
    [plugin_slug] => search-filter
    [form_settings] => Array
    (
    [use_template_manual_toggle] => 1
    [enable_taxonomy_archives] => 0
    [enable_auto_count] => 0
    [auto_count_refresh_mode] => 1
    [auto_count_deselect_emtpy] => 0
    [template_name_manual] => search.php
    [page_slug] => advanced-search
    [post_types] => Array
    (
    [practice] => 1
    )

    [post_status] => Array
    (
    [publish] => 1
    )

    [use_ajax_toggle] => 1
    [scroll_to_pos] => 0
    [pagination_type] => normal
    [custom_scroll_to] =>
    [use_relevanssi] => 1
    [use_relevanssi_sort] => 1
    [auto_submit] => 1
    [display_results_as] => archive
    [update_ajax_url] => 1
    [only_results_ajax] =>
    [ajax_target] => #search-filter-results-299
    [ajax_links_selector] => .pagination a
    [infinite_scroll_container] =>
    [infinite_scroll_trigger] => -100
    [infinite_scroll_result_class] =>
    [show_infinite_scroll_loader] => 1
    [results_per_page] => 9999999
    [exclude_post_ids] =>
    [field_relation] => and
    [default_sort_by] => date
    [sticky_posts] =>
    [default_sort_dir] => desc
    [default_meta_key] => _additional_settings
    [default_sort_type] => numeric
    [secondary_sort_by] => 0
    [secondary_sort_dir] => desc
    [secondary_meta_key] => _additional_settings
    [secondary_sort_type] => numeric
    [taxonomies_settings] => Array
    (
    [category] => Array
    (
    [include_exclude] => exclude
    [ids] => 1
    )

    [post_tag] => Array
    (
    [include_exclude] => include
    [ids] =>
    )

    [post_format] => Array
    (
    [include_exclude] => include
    [ids] =>
    )

    [luv_portfolio_categories] => Array
    (
    [include_exclude] => include
    [ids] =>
    )

    [luv_portfolio_tags] => Array
    (
    [include_exclude] => include
    [ids] =>
    )

    )

    [results_url] =>
    )

    [cache_table_name] => wp_csf_search_filter_cache
    [term_results_table_name] => wp_csf_search_filter_term_results
    [field_values] => Array
    (
    [_sft_category] => Array
    (
    [0] => community-development
    [1] => environment
    )

    [post_types] => Array
    (
    [0] => practice
    )

    )

    )

    Trevor
    #173863

    If you look at this post:

    https://support.searchandfilter.com/forums/topic/display-multiple-terms/#post-171986

    (and the thread it is in), and this thread (similar to your I think):

    https://support.searchandfilter.com/forums/topic/issue-with-get_fields_html/

    You will see how they did this it. We also have some documentation:

    https://www.designsandcode.com/documentation/search-filter-pro/accessing-search-data/

    You can show the terms, but the x to remove, I do not know how to do.

    Anonymous
    #173865

    thank you I’ll take a look, in the meantime can you please remove the link in my post above from results_url, I didn’t mean to include that and I can’t edit the reply.

    Trevor
    #173874

    I have done that for you and will wait to hear from you.

    Anonymous
    #173884

    Thanks!

    Got it working using the links you supplied.

    $sf_current_types_query = $searchandfilter->get(299)->current_query()->get_array();
    $currentType=$sf_current_types_query['post_types']['active_terms'][0]['name'];
    if ( empty($currentType) ) {
    	echo '';
    } else {
            echo '<li>' . $sf_current_types_query['post_types']['active_terms'][0]['name'] . '<i class="fa fa-times"></i></li>';
    }
    						
    ?>
Viewing 10 posts - 1 through 10 (of 10 total)