selftrips
@selftrips

Можно ли получить значения определенных метаполей «скопом»?

С помощью
$meta = new stdClass;
foreach( get_post_meta( $idt ) as $k => $v )
	$meta->$k = $v[0];
// Получим значение нужным нам мета полей. 
$trip  = $meta -> trip;
...

получаются все метаполя.
Можно ли как то получить только нужные метаполя? Например, задав список имен метаполей в неком массиве?
Имеет ли смысл это делать? (сократится ли время и количество запросов, если получать не все мета поля, а только выборочные)?
  • Вопрос задан
  • 151 просмотр
Пригласить эксперта
Ответы на вопрос 1
atlantech
@atlantech
Full Stack Software Developer
Вам нужно осуществить запрос прямо в таблицу wp_postmeta. Что-то наподобии
global $wpdb;

$wpdb->prepare( 
    "SELECT * FROM wp_postmeta WHERE post_id = %d AND meta_key IN (%s, %s)", $post_id, $key1, $key2
 );


Количество запросов не изменится, просто будет отправлено меньше данных. Разницу в производительности вы врядли ощутите, возможно только если у вас очень много метаданных.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
28 апр. 2024, в 17:10
20000 руб./за проект
28 апр. 2024, в 15:00
100000 руб./за проект
28 апр. 2024, в 14:43
5000 руб./за проект