Если я не ошибаюсь (что, скорее всего, я могу быть), вы не можете выполнить запрос, как пытаетесь сделать со встроенными функциями Wordpress.
То, что вы можете сделать, находится вВаш файл functions.php (где хранятся пользовательские функции темы), содержащий функцию, которая принимает массив массивов аргументов и проходит по ним с каждым проходом, добавляя возвращаемые сообщения в массив.Я думаю, что get_posts () будет наилучшей функцией для этого, так как она возвращает сообщения в массиве вместо необходимости в цикле.
function query_posts_multiple($arrArgs)
{
if (!is_array($arrArgs)) return false; // Prevents warnings and fatal errors.
$posts = array();
foreach ($arrArgs as $args)
{
$posts = array_merge($posts, get_posts($args));
}
return $posts;
}
Для массива args, вотпример:
$args = array();
$args[] = array(
'numberposts' => 7,
'tag' => "50",
);
Вы бы просто использовали цикл foreach () в своей теме.Для доступа к данным вы должны использовать $ post -> column fashion.
$posts = get_posts_multiple($args);
foreach ($posts as $post)
{
// call all the $post->COLUMNs your heart desires
}
unset($posts); // Delete that variable just to be safe.
Чтобы ограничить количество сообщений, просто продолжайте считать и останавливайте цикл, когда достигнете определенного числа.Чтобы рандомизировать ваш массив, вы можете использовать shuffle () .
Это, вероятно, очень, очень грязный способ сделать это, обвинить меня в моей крайней усталости ...
Логан