Hello
I have a flexible content field in which I want to display certain events.
The events that are shown should be selected by a taxonomy field where several entries (cities) of a custom post taxonomy (locations) can be selected by checkbox. (multiselect)
The return is an Taxonomy object.
I need a list of the slugs from the selected fields.
The list should be e.g. like: ‘munich’, ‘london’,
The relevant Code is
<?php
$locations = get_sub_field('select_locations');
$loop = new WP_Query( array( 'post_type' => 'events', 'posts_per_page' => 99,
'tax_query' => array(
array(
'taxonomy' => 'locations',
'field' => 'slug',
'terms' => array(
/* HERE SHOULD BE THE LIST */
)
)
)
) );
?>
I tried several things but I can’t get it working.
I would be very happy if someone could help me with this.
Thanks a lot.
I’ve been trying to do something similar. I needed to pull list of category Names and slugs and use them to populate a News feed. I’m sure this is probably not the best way to do it but it worked for me.
//vars
$terms = get_sub_field('filter_news_feed');
//set variables for the category slug and category name
$output = "";
$nameOutput = "";
//Loop throuh each item in the array and assign the slug and name values to their variables
foreach( $terms as $term ):
$output.= $term->slug . ', ';
$nameOutput.= $term->name . ', ';
endforeach;
//trim the last , and space ' ' off of the list
$trimOutput = rtrim($output,', ');
//trim the last , and space ' ' off of the list
$trimNameOutput = rtrim($nameOutput,', ');
and then to load it into the array:
$args = array(
'post_type' => 'post',
'post_parent' => 0,
'posts_per_page' => 4,
'order' => 'DSC',
);
//adding 'category_name' => 'slug, slug, slug, etc'; to args array
$args['category_name'] = $trimOutput;
Hope that helps….
Hey Helmet,
thank you for your answer. I allready found a solution with the help of a developer.
It seems quite similar to yours.
Just for anyone who’s interested:
`
<?php
$locations = get_sub_field(‘orte_eingrenzen’);
$locationsSelected = array();
foreach( $orte as $ort ):
$locationsSelected[] = $ort->slug;
endforeach;
$loop = new WP_Query( array( ‘post_type’ => ‘kurse’, ‘posts_per_page’ => 99, ‘meta_key’ => ‘datum’, ‘orderby’ => ‘meta_value’, ‘order’ => ‘ASC’,
‘tax_query’ => array(
array(
‘taxonomy’ => ‘loacations’,
‘field’ => ‘slug’,
‘terms’ => $locationsSelected
)
)
) );
?>