Support

Account

Home Forums General Issues Meta-query is not working

Solved

Meta-query is not working

  • Hi, I’m trying to get all the posts in the “fastigheter” custom post type that have the values “Renoveras” or “Under Uppbyggnad” in the “byggstatus” custom field. For some reason the code underneath returns all the items from the “fastigheter” CPT, any idea why?

    $fastigheter = get_posts ([
    		'post_type' => 'fastigheter',
    		'numberposts' => -1,
    		'meta-query' => [[
    			'key' => 'byggstatus',
    			'value' => ['Renoveras', 'Under Uppbyggnad'],
    			'compare' => '='
    		]]	
    	]);
  • What type of field is “byggstatus”

  • A select field, and by the looks of it can hold multiple values. See the section titled 3. Multiple custom field values (array based values) on this page https://www.advancedcustomfields.com/resources/query-posts-custom-fields/

  • This is my code now:

    $fastigheter = get_posts ([
    	'post_type' => 'fastigheter',
    	'numberposts' => -1,
    	'meta-query' => [
    		'relation' => 'OR',
    		[
    		        'key' => 'byggstatus',
    			'value' => 'Renoveras',
    			'compare' => '='
    		],
    		[
    			'key' => 'byggstatus',
    			'value' => 'Under Uppbyggnad',
    			'compare' => '='
    		]
    	]
    ]);

    I still get all the posts in the fastigheter cpt.

  • 'meta-query' should be 'meta_query'

    underscores and not dashes for argument names

  • Unbelievable… 😛 Thanks!

  • I’m trying to run a query that only displays items that meet a condition in an Advanced Custom Fields select box, but I’m getting nothing. Here’s my query. Any help would be appreciated:

    <?php $args = array(
    ‘post_type’ => ‘home_plans’,
    ‘orderby’=> ‘date’,
    ‘order’ => ‘rand’,
    ‘numberposts’ => ’12’,
    ‘meta_query’ => array(
    ‘relation’ => ‘AND’,
    array(
    ‘key’ => ‘display_where’,
    ‘value’ => ‘here’,
    ‘compare’ => ‘LIKE’
    )
    )
    ); ?>

    <div id=”ms-container” class=”row archive”>
    <ul id=”posts_list”>
    <?php $recent_posts = wp_get_recent_posts( $args );
    $selected = get_field(‘display_where’);

    foreach( $recent_posts as $recent ){
    get_template_part( ‘template-parts/plan-archive-loop’, get_post_format() );
    }

    //wp_reset_postdata();
    ?>

    </div>

    Regards,
    from VidyaVox Jio4GVoice for PC

Viewing 8 posts - 1 through 8 (of 8 total)

You must be logged in to reply to this topic.