Отобразить таксономию из пользовательского типа сообщения

В настоящее время у меня есть пользовательский тип сообщения «Продукты».

Пользовательский тип сообщения в настоящее время.

Как видите, теперь у меня есть внешние и внутренние продукты, которые были созданы с помощью этого кода:

    add_action( 'init', 'create_product__cat_external' );
function create_product__cat_external() {
register_taxonomy(
'ExternalProducts',
'products',
array(
'label' => __( 'External Products' ),
'rewrite' => array( 'slug' => 'externalproducts' ),
'hierarchical' => true,
)
);
}
add_action( 'init', 'create_product__cat_internal' );

function create_product__cat_internal() {
register_taxonomy(
'InternalProducts',
'products',
array(
'label' => __( 'Internal Products' ),
'rewrite' => array( 'slug' => 'internalproducts' ),
'hierarchical' => true,
)
);
}

То, чего я пытаюсь достичь, — это страница, которая может отображать ТОЛЬКО категории внутри сторонних продуктов.

У меня есть этот фрагмент кода, который отображает ОБА внешние и внутренние:

<?php
$customPostTaxonomies = get_object_taxonomies('products');

if(count($customPostTaxonomies) > 0)
{
foreach($customPostTaxonomies as $tax)
{
$args = array(
'orderby' => 'name',
'show_count' => 0,
'pad_counts' => 0,
'hierarchical' => 1,
'taxonomy' => $tax,
'title_li' => ''
);

wp_list_categories( $args );
}
}
?>

Любая помощь будет отличной.
Приветствия.

ОБНОВИТЬ:

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

Код ниже:

<?php
$taxonomy = 'ExternalProducts';
$queried_term = get_query_var($taxonomy);
$terms = get_terms($taxonomy, 'slug='.$queried_term);
if ($terms) {
echo '<ul>';
foreach($terms as $term) {
// The $term is an object, so we don't need to specify the $taxonomy.
$term_link = get_term_link( $term );

// If there was an error, continue to the next term.
if ( is_wp_error( $term_link ) ) {
continue;
}

// We successfully got a link. Print it out.
echo '<li><a href="' . esc_url( $term_link ) . '">' . $term->name . '</a></li>';
echo $term->description;
}
echo '</ul>';
}
?>

1

Решение

Вам нужно использовать функцию «get_terms». Вот краткий код.
Предположим, ваше имя таксономии = custom_taxonomy


$catlsit = get_terms('custom_taxonomy',
array(
'orderby' => 'count',
'hide_empty' => 0
)
);
print_r($catlsit);

Вы получите список категорий, созданный в таксономии: custom_taxonomy.
если вам нужен другой, пожалуйста, запишите.
Спасибо,

0

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

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

По вопросам рекламы ammmcru@yandex.ru