Вопрос

я использую Получите сообщения Плагин для перечисления сообщений с постом «Проект». Я хочу отфильтровать список по двум пользовательским полям: Год (например, 2006) и штат (например, завершено). я добавил meta_query на плагин get_post Args и попробовал шорт -код:

[get_posts post_type="project" meta_query="array(array('key' => 'state', 'value' => 
'Completed'),array('key' => 'year','value' => '2006'))" suppress_filters="false"]

Это не работает, хотя я могу получить как «государство», так и «год» для работы самостоятельно, используя meta_key а также meta_value.

Может ли кто -нибудь поставить меня в правильное направление?

Это было полезно?

Решение

Кроме того, плагин не обновляется, это не будет работать, потому что Meta_Query Arg оценивается как строка:

array(3) {
  ["post_type"] => string(7) "project"
  ["meta_query"] => string(96) "array(array('key' => 'state', 'value' => 
'Completed'),array('key' => 'year','value' => '2006'))"
  ["suppress_filters"] => string(5) "false"
}

Я предлагаю вам сделать Пользовательский шаблон страницы, где вы должны напрямую позвонить get_posts () с помощью meta_query, который вы хотите.

Вам придется скопировать код, который обрабатывает фактический список сообщений.

Другие советы

Я не думаю, что плагин был обновлен для поддержки новых аргументов запроса или, в частности, в этом случае meta_query Арг

На странице плагина перечислены совместимость до 3.0.5, и если я правильно помню, meta_query был введен в 3.1, поэтому, естественно, я заключаю, что поддержка еще не доступна ..

Я могу ошибаться, просто соединяя точки ..

Плагин использует shortcode_atts Чтобы ограничить список принятых аргументов:

http://plugins.trac.wordpress.org/browser/nurelm-get-posts/tags/0.3/get-prosts.php#l29

meta_query нет в этом списке. Я бы посоветовал поднять плагин или попросить автора обновить его, чтобы позволить мета -запросы.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с wordpress.stackexchange
scroll top