Search code examples
wordpressadvanced-custom-fields

Query custom posts filtered by ACF users id


I have custom post type called journals and an ACF Users field called editors (return format User ID ).

While adding a new journal, you can select multiple users as Editors.

Now, I want to create a query to get all journals where the current user is assigned as editor.

I tried something like this:

$current_user = wp_get_current_user();

$args = array(  
  'post_type' => 'journals',
  'post_status' => 'publish',
  'meta_query' => array(
     array(
       'key' => 'editors',
       'value' => $current_user->ID, 
       'compare' => 'IN'
     )
   )
);

How can I achieve this?


Solution

  • I used LIKE instead of IN as below -

    $current_user = wp_get_current_user();
    
    $args = array(  
        'post_type' => 'journals',
        'post_status' => 'publish',
        'meta_query' => array(
            array(
                'key' => 'editors',
                'value' => $current_user->ID,
                'compare' => 'LIKE'
            )
        )
    );
    

    This works for me.