Помогите решить задачу по выводу ккастомных записей
Есть несколько типов своих записей
Нужно вывести 10 последних записей по 5 шт из двух своих типов записей отсортированных в произвольном порядке.
$args = array( 'post_type' => array( 'post_type' => 'news', 'teams' => 'recipes', 'showposts' => "6", ), 'orderby' => "ASC", 'caller_get_posts' => 1 ); $my_query = new wp_query($args);
Спасибо всем, буду пробовать
$post_ids = []; foreach( ['первый_кастомный_тип_записи', 'второй_кастомный_тип_записи'] as $post_type ) { $args = [ 'post_type' => $post_type, 'post_status' => 'publish', 'numberposts' => 5,// The half from 10 post's count 'orderby' => 'date', 'order' => 'DESC', 'fields' => 'ids', ]; $post_ids = array_merge( $post_ids, get_posts( $args ) ); } $my_query = new wp_query( [ 'post__in' => shuffle( $post_ids ), ] ); // The Rest ...post_type(строка/массив)
orderby rand
mi13 - Внимательно(!) прочитайте ТЗ, потом комментируйте.
Ну да, сори, если строго по 5, то рандом не прокатит.
На самом деле, есть еще проблема с этим злополучным рандомом, он не на всех хостингах работает на уровне MySQL.
Попробуйте
ar1 = get_posts(первый)
ar2 = get_posts(второй)
Далее перемешать каждый массив
Далее добавить в третий массив ar3 по одному с каждого.
foreach( $ar3 as $post ) { $post->post_title; $post->ID; }