Задать вопрос
@Bazdyrev_Levan
Programmer PHP, JS

Как осуществить обработку массива в WordPress?

$query = $wpdb->get_results("SELECT * FROM $wpdb->posts INNER JOIN $wpdb->postmeta ON $wpdb->posts.id = $wpdb->postmeta.post_id");
     //print_r($query);
     foreach($query as $value)
     {
        var_dump($value->post_meta);
     }

При таком выполнении кода, в значениях одни NULL
А вот при таком:
$query = $wpdb->get_results("SELECT * FROM $wpdb->posts INNER JOIN $wpdb->postmeta ON $wpdb->posts.id = $wpdb->postmeta.post_id");
     //print_r($query);
     foreach($query as $value)
     {
        var_dump($value['post_meta']);
     }

Выводит на экран ошибку:
Fatal error: Cannot use object of type stdClass as array
  • Вопрос задан
  • 2755 просмотров
Подписаться 2 Оценить 1 комментарий
Решения вопроса 1
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
var_dump ($query) до цикла покажите
PS Это в WP пропагандирует такой стиль написания SQL запросов? Ужас какой...

UPD:
У вас как Вы видите возвращается массив из 3х объектов.
Во первых надо к ним обращаться как к объектам а не как к массивам, а во вторых ни в одном из них нет поля post_meta.

Почему его там нет - мне не ведомо, но foreach работает как и должен :)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы