WordPress как на ладони
wordpress jino

Вывести записи отсортированные по пользовательскому полю

Есть категория, типа портфолио, несколько постов с разным значением пользовательского поля "дата сдачи объекта".
Хочу выводить эти записи группами в зависимости от значения этого поля, и при этом после каждой такой группы выводить разделитель, а перед каждой такой группой - дату из пользовательского поля. Не могу придумать как это реализовать. Пока сделала так:

global $post;

$args = array( 
	'category' => 24, 
	'posts_per_page' => -1,
	'order'=> 'ASC', 
	'orderby' => 'meta_value_num',
	'meta_key' => 'sort_clients',
); // meta_key  - поле по которому сортирую вывод

$myposts = get_posts( $args );

//echo '----------------------------------------------------';
$mass_post = array();
foreach($myposts as $post){ 
	setup_postdata($post);

	$sort_clients = get_post_meta($post->ID, 'sort_clients',true);
	$client_date = array( "nsc-sort_clients" => $sort_clients );
	$new_post = (object) array_merge( (array)$post, $client_date );//дописываю в объект 

	//
	$mass_post[]= objectToArray($new_post); //преобразовала объект в массив
}

Дальше думаю фильтровать через array_filter(), но сомневаюсь, может есть способ проще, на функциях wordpress? Правда, не знаю на каких...
Скажите, в правильном ли я направлении или это бред?

0
Гость 1.3 года назад

Нет ответов на этот вопрос.

На вопросы могут отвечать только зарегистрированные пользователи. Регистрация. Вход.