Wordpress 使用 get_term 检索 slug 未按预期工作

Wordpress using get_term to retrieve slug not working as expected

我正在使用以下代码尝试获取当前类别和父类别的 slug。

我已经设法获得当前的猫鼻涕虫,但父鼻涕虫以可读文本和坚果鼻涕虫格式显示。

我哪里错了?

    <?php $term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) ); 
    $parent = get_term($term->parent, get_query_var('taxonomy') );?>

        <?php echo do_shortcode("[ecs-list-events cat='{$term->slug}']"); ?>   

     <?php 
    echo $term->slug; 
    echo $parent->name;
    ?>

我最近才自己设置了这样的东西。这是我用来完成类似事情的代码:

<?php 
    global $post;    
    $terms = get_the_terms($post->id, 'my-custom-taxonomy-name');   
    $term = get_term_by( 'id', $terms[0]->term_id, 'my-custom-taxonomy-name');
    $parent = get_term($term->parent, 'my-custom-taxonomy-name' );

    echo $parent->slug; //This will return the parent slug
?>

使用您的代码,您可以像这样完成此操作:

<?php 
$term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) ); 
$parent = get_term($term->parent, get_query_var('taxonomy') );
?>

<?php echo do_shortcode("[ecs-list-events cat='{$term->slug}']"); ?>   

<?php 
echo $term->slug; 
echo $parent->slug; //change this to "slug"
?>

您可能只需要更改“echo $parent->name;”到“echo $parent->slug;”。此外,您应该查看这些文章以了解可以从 get_term_by() and get_term() 函数返回哪些参数。