-
AuthorSearch Results
-
February 11, 2017 at 11:45 pm #89576
In reply to: Post Meta Date Range
AnonymousInactiveThank for your answer. Do you have a code sample? I tried some but no result.
function filter_function_name( $query_args, $sfid ) { if( $sfid == 940 ) { global $searchandfilter; $sf_current_query = $searchandfilter->get(940)->current_query(); $array_data = $sf_current_query->get_array(); $tender_start = $array_data['_sfm_tender_start']['active_terms'][0]['value']; $tender_end = $array_data['_sfm_tender_end']['active_terms'][0]['value']; $args = array( 'meta_key' => 'tender_start', 'orderby' => 'meta_value_num', 'order' => 'ASC', 'meta_query' => array( 'relation' => 'AND', array( 'key' => 'tender_start', 'compare' => '>=', 'value' => $tender_start ), array( 'key' => 'tender_end', 'compare' => '<=', 'value' => $tender_end ) ) ); } return $query_args; } add_filter( 'sf_edit_query_args', 'filter_function_name', 20, 2 );
January 1, 2017 at 9:35 pm #79470In reply to: show featured post at top of search results
AnonymousInactiveI’ve started to work on the code by beginning with showing only the featured therapists.
I’ve got the codeadd_filter( 'sf_edit_query_args', 'filter_featured_first', 20, 2 ); function filter_featured_first( $query_args, $sfid ) { if($sfid==491) { $query_args = array('meta_query' => array( 'relation' => 'AND', array('key' => 'featured', 'value' => 1 ) ), 'posts_per_page' => 4 );} return $query_args;}
However, I can’t get the pagination to work. The same posts are being shown on every page.
How do I fix the pagination? And how do I get it to work with the above function edit_posts_orderby()?December 31, 2016 at 8:23 pm #79403In reply to: show featured post at top of search results
AnonymousInactiveThanks so much for your help.
What do you mean by a ‘sort field’? Do you mean in the Search Form UI?
I’m using ‘post meta’ and ‘search’ fields. You can see the filter on http://gethelpisrael.mgtestsite.com/therapist/?_sfm_medical_professional_type=Therapist So would I be ok then?
Also, how would I add the code for the randomisation with the pagination?
Could I leave the filter: add_filter(‘posts_orderby’, ‘edit_posts_orderby’);
and add add_filter( ‘sf_edit_query_args’, ‘filter_function_name’, 20, 2 ); with my custom code and they would both work?
Or do I need to combine them into one function?November 17, 2016 at 4:38 pm #70909In reply to: Settings & Default / Post (wrong default order)
AnonymousInactivefunction sf_filter_query_args( $query_args, $sfid ) {
if($sfid==1225){
global $searchandfilter;
$sf_current_query = $searchandfilter->get(1225)->current_query();$sf_current_query->get_field_string(“_sfm_event_archives”);
$_sfm_event_archives_array = $sf_current_query->get_array();
$archive_is_check = $_sfm_event_archives_array[_sfm_event_archives][active_terms][0][value];//print_r($archive_is_check);
if($archive_is_check != ‘1’){
$args_custom = array(
“meta_key” => “imic_event_start_dt”,
“orderby” => “meta_value_num”,
“order” => “ASC”,
“meta_query” => Array (
“event_archives” => Array (
“key” => “event_archives”,
“value” => “0”
)
)
);$query_args = array_merge($query_args, $args_custom);
}// si aucun filtre d’appliqué
//if($sf_current_query->is_filtered()!=1){}}
return $query_args;
}
add_filter( ‘sf_edit_query_args’, ‘sf_filter_query_args’, 100, 2 );November 17, 2016 at 4:37 pm #70903In reply to: Settings & Default / Post (wrong default order)
AnonymousInactiveHi,
thanks for your help!!!
It wasn’t the wpml plugin,
but the custom code (that I was sure it wasn’t in cause)
I had to add the bold section here to make it workfunction sf_filter_query_args( $query_args, $sfid ) { if($sfid==1225){ global $searchandfilter; $sf_current_query = $searchandfilter->get(1225)->current_query(); $sf_current_query->get_field_string("_sfm_event_archives"); $_sfm_event_archives_array = $sf_current_query->get_array(); $archive_is_check = $_sfm_event_archives_array[_sfm_event_archives][active_terms][0][value]; //print_r($archive_is_check); if($archive_is_check != '1'){ $args_custom = array( <strong>"meta_key" => "imic_event_start_dt", "orderby" => "meta_value_num", "order" => "ASC",</strong> "meta_query" => Array ( "event_archives" => Array ( "key" => "event_archives", "value" => "0" ) ) ); $query_args = array_merge($query_args, $args_custom); } // si aucun filtre d'appliqué //if($sf_current_query->is_filtered()!=1){} } return $query_args; } add_filter( 'sf_edit_query_args', 'sf_filter_query_args', 100, 2 );
Thanks again for your help guys!
Really nice plugin!March 14, 2016 at 5:20 pm #39398
RossKeymasterHey Paul
You don’t need to do this via query args – you can do all this via the
posts
tab.If it must be dynamic and via the query args, then its the same as when using the standard
new WP_Query($args)
So, to modify
orderby
you need this part of the WP docs:https://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters
Updating the S&F filter example with the example from the WP site on order:
$args = array( 'orderby' => 'title', 'order' => 'DESC' ); $query = new WP_Query( $args );
Will update the filter like:
function filter_function_name( $query_args, $sfid ) { //if search form ID = 225, the do something with this query if($sfid==225) { //modify $query_args here before returning it $query_args['orderby'] = 'title'; $query_args['order'] = 'DESC'; } return $query_args; } add_filter( 'sf_edit_query_args', 'filter_function_name', 10, 2 );
Thanks
-
AuthorSearch Results