Как исправить «Не удалось преобразовать объект класса WP_Term в строку»? - PullRequest
0 голосов
/ 11 июля 2020

Я хочу oop просмотреть каждый свой пост и получить идентификатор таксономии / категории. После этого я хочу вывести эти идентификаторы в одну строку (не как числовое значение c), разделенную пробелом.

Я получаю эту ошибку, когда пытаюсь повторить строку: «Объект класса WP_Term не может быть преобразован в строку "

Вот что у меня есть до сих пор:

<?php
          $taxonomy = wp_get_object_terms($post->ID, 'categories');
          $ids = "";
           
          foreach ($taxonomy as $cat) {
              $ids .= $cat;
          }
  ?>

1 Ответ

1 голос
/ 11 июля 2020

Как следует из сообщения об ошибке, wp_get_object_terms возвращает массив WP_Term объектов. Если вы хотите получить идентификатор из объекта термина, вы можете использовать $term_object->term_id.

В своем коде вы должны использовать $cat->term_id (и вы также добавляете их все в строку без пробелов поэтому я тоже добавил пробел):

$taxonomy = wp_get_object_terms($post->ID, 'categories');
$ids = "";
       
foreach ($taxonomy as $cat) {
    $ids .= " ".$cat->term_id;  // het the id from the term object
}

Ссылка:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...