Как исключить сообщения с пустым и несуществующим реляционным настраиваемым полем с meta_query?

У меня есть (категория) отношение пользовательского поля (ACF) в моих сообщениях, именуемых im_featured_on_category_pages – в основном это позволяет администратору выбирать, следует ли размещать сообщение на выбранных страницах категорий. Запомненное значение представляет собой сериализованный массив, такой как a:1:{i:0;s:3:"273";} где «273» будет «признанным» идентификатором категории.

В функции, называемой get_category_featured($catID) внутри моего файла functions.php , у меня есть функция со следующим запросом get_posts :

$cat_featured_posts = get_posts([ 'numberposts' => 3, 'post_type' => 'post', 'category' => $catID, 'meta_query' => [ 'relation' => 'AND', [ 'key' => 'im_featured_on_category_pages', 'compare' => 'EXISTS' ], [ 'key' => 'im_featured_on_category_pages', 'value' => '', 'compare' => '!=' ], [ 'key' => 'im_featured_on_category_pages', 'value' => '"' . $catID . '"', 'compare' => 'LIKE' ] ], 'orderby' => 'date', 'order' => 'DESC' ]);

Этот запрос работает … он получает только 3 сообщения в этой категории … но … meta_query, по-видимому, игнорируется. Он по-прежнему возвращает все сообщения, независимо от того, существует ли поле ACF, пусто или имеет правильное значение, которое я ищу.

В основном я хочу, чтобы возвращаемые сообщения были:

  1. В указанной категории ( $catID )
  2. Должно иметь поле под названием im_featured_on_category_pages
  3. im_featured_on_category_pages не должно быть пустым
  4. im_featured_on_category_pages должно содержать ('LIKE') $catID
  5. Возвращенные 3 сообщения должны быть заказаны по дате (сначала самые новые)

Любая помощь на этом этапе была бы очень признательна … была в этом около 8 часов и не может понять, что я делаю неправильно здесь.

UPDATE: Итак, я пробовал несколько разных запросов, и независимо от того, что я помещал в meta_query … кажется, это проигнорировано … Я даже взял meta_query и получаю такой же результат без него. Это как get_posts() полностью игнорирует мой meta_query. Имеет ли это какое-либо отношение к тому, что я использую его в functions.php а не в шаблоне?