Получить родительский термин с дочерним термином - PullRequest
0 голосов
/ 18 марта 2019

Как я могу получить родительский и дочерний термин пользовательского типа сообщения. У меня есть код ниже, который частично работает, проблема в том, что он не генерирует дочерний и родительский термин в одном div, но отличается от div как loop. Из-за отсутствия знаний по PHP я не совсем уверен, как это исправить.

Что я хочу, если у меня есть родитель и ребенок как;

 - USA
  - New York

Выход должен быть;

USA, New York 

, но с кодом ниже он генерирует как

,USA
,New York

код;

<div class="address">
<?php

$terms = get_terms(array(
   'taxonomy' => 'people-country',
   'hide_empty' => false,
 ));
?>
<?php foreach ($terms as $term) : ?>
<?php
     $re = explode('-', $term->name);
     $args = array (
         'post_type' => 'people', //
         'posts_per_page' => 2,
         'order' => 'ASC',
         'tax_query'     => array(
              array(
                 'taxonomy'  => 'people-country',
                 'field'     => 'id',
                 'terms'     => $term->term_id,
              ),
          ),
    );

    $query = new WP_Query( $args );
    if( $query->have_posts() ){
         while( $query->have_posts() ){
             $query->the_post();
             $title =  get_the_title();
             // $info = get_post_meta(get_the_ID(), '_post_info', true);
             // $link = get_term_meta($term->term_id, 'link', true);
    ?>

        <div class="text">
                <span class="number"><?php echo ",".$re[0] ?>
            </span>

        </div>

    <?php
        }
    }
endforeach; ?>

</div>

1 Ответ

1 голос
/ 20 марта 2019

Я только что решил это, изменив его с кодом ниже;

<?php
$cats = get_the_terms(get_the_ID(), 'people-country');
$names = array();

if ($cats) foreach ($cats as $cat) {
  if ($cat->parent) {
      array_push($names, $cat->name);
  }
}

if ($cats) foreach ($cats as $cat) {
  if (!$cat->parent) {
      array_push($names, $cat->name);
  }
}
?>
<?php echo implode(', ', $names) ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...