Упорядочить пользовательские типы записей в WordPress с помощью meta_value другого плагина

У меня есть список пользовательских типов сообщений, которые я показываю на моем сайте. В дополнение к этим типам постов, я добавил в свой WordPress плагин, который позволяет мне добавлять рейтинговую систему для каждого типа постов, чтобы она выглядела так:

https://i.imgur.com/jXR26i5.jpg

Код для выглядит следующим образом:

<?php
/* The custom post types query */
$query = new WP_Query( array(
"post_type" => "motto",
"order" => "ASC",
));
while($query -> have_posts()) : $query -> the_post();
?>

/* Container with the ratings from the plugin + each post type */
<div id="motto-container">
<?=function_exists('thumbs_rating_getlink') ? thumbs_rating_getlink() : ''?>
<h3 class="abimottos">
<?php echo get_post_meta($post->ID, 'motto_titel', true); ?>
</h3>
</div>

У меня есть список этих пользовательских сообщений + их оценки, и, конечно, у каждого сообщения есть индивидуальный рейтинг, и я хочу заказать свои пользовательские типы сообщений после значения этих оценок. Как я могу заархивировать это?

Я знаю, что мета-ключ для рейтингов — это _thumbs_rating_up (поскольку я уже изменил значение с помощью плагина ARI Adminer), могу ли я каким-то образом использовать этот мета-ключ для упорядочивания пользовательских типов записей после мета-значения рейтингов?

Я довольно новичок в PHP и базах данных.

0

Решение

Вы уже используете WP_Query для получения сообщений, поэтому вы можете указать meta_key для сортировки в массиве $ args, например,

$query = new WP_Query( array(
'post_type'  => 'motto',
'meta_key'   => 'thumbs_rating_up',
'orderby'    => 'thumbs_rating_up',
'order'      => 'DESC'
));

Обратите внимание, что вам нужно включить имя ключа в оба meta_key а также orderby, Я также предполагаю, что вы хотите отсортировать в порядке убывания, чтобы сначала показать самые высокие оценки.

Ref: WordPress Codex для WP_Query

Также заметка на мета-ключе:
meta_keys с префиксом подчеркивания являются приватными и скрытыми от пользовательских полей, поэтому обычно вы используете версию без подчеркивания. Это может быть не так, потому что я предполагаю, что рейтинг не может быть изменен администратором, но просто убедитесь, что мета-ключ, который вам нужно использовать, на самом деле _thumbs_rating_up и не thumbs_rating_up,

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]