为博客元信息添加自定义分类

时间:2018-02-08 作者:Ashley

很抱歉,但我不太确定这篇文章的标题。当我的自定义分类法被搜索时,在“发布”之后没有显示任何内容,我不知道如何将其添加到下面的php类别中。

非常感谢您的帮助,我想我需要一份if/else声明?

        <p class="post-info"><?php the_time(\'F j, Y\'); ?> | by <a href="<?php echo get_author_posts_url(get_the_author_meta(\'ID\')); ?>"><?php the_author(); ?></a> | Posted in

        <?php
            $categories = get_the_category();
            $separator = ", ";
            $output = \'\';

            if ($categories) {

                foreach ($categories as $category) {

                    $output .= \'<a href="\' . get_category_link($category->term_id) . \'">\' 
                    . $category->cat_name . \'</a>\'  . $separator;

                }
                echo trim($output, $separator);
                }
        ?>

</p>

1 个回复
最合适的回答,由SO网友:Iceable 整理而成

get_the_terms() 是获取与帖子关联的自定义分类的术语所需的函数。

它类似于(但不完全相同)get_the_category() 对于默认类别分类法。

[编辑以回答下面的第一条评论]

调整类别的代码,下面是如何显示类别或术语:

<?php
    $categories = get_the_category();
    $separator = ", ";
    $output = \'\';

    if ($categories) {

        foreach ($categories as $category) {

            $output .= \'<a href="\' . get_category_link($category->term_id) . \'">\' 
            . $category->cat_name . \'</a>\'  . $separator;

        }
        echo trim($output, $separator);
    }
    elseif ( $terms = get_the_terms( get_the_ID(), \'my-custom-taxonomy\' ) ) {

        foreach ( $terms as $term ) {

            $output .= \'<a href="\' . get_term_link( $term, \'my-custom-taxonomy\' ) . \'">\' 
            . $term->name . \'</a>\'  . $separator;

        }
        echo trim( $output, $separator );
    }
?>
别忘了更换\'my-custom-taxonomy\' (两次)使用实际的slug进行分类。

请注意,通过使用此if/else结构,如果一篇文章同时具有自定义分类法中的类别和术语,则只会显示类别。你可以改变elseif 只是if 在这种情况下,他们希望两者都显示出来。

参考文献:

结束

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在

为博客元信息添加自定义分类 - 小码农CODE - 行之有效找到问题解决它

为博客元信息添加自定义分类

时间:2018-02-08 作者:Ashley

很抱歉,但我不太确定这篇文章的标题。当我的自定义分类法被搜索时,在“发布”之后没有显示任何内容,我不知道如何将其添加到下面的php类别中。

非常感谢您的帮助,我想我需要一份if/else声明?

        <p class="post-info"><?php the_time(\'F j, Y\'); ?> | by <a href="<?php echo get_author_posts_url(get_the_author_meta(\'ID\')); ?>"><?php the_author(); ?></a> | Posted in

        <?php
            $categories = get_the_category();
            $separator = ", ";
            $output = \'\';

            if ($categories) {

                foreach ($categories as $category) {

                    $output .= \'<a href="\' . get_category_link($category->term_id) . \'">\' 
                    . $category->cat_name . \'</a>\'  . $separator;

                }
                echo trim($output, $separator);
                }
        ?>

</p>

1 个回复
最合适的回答,由SO网友:Iceable 整理而成

get_the_terms() 是获取与帖子关联的自定义分类的术语所需的函数。

它类似于(但不完全相同)get_the_category() 对于默认类别分类法。

[编辑以回答下面的第一条评论]

调整类别的代码,下面是如何显示类别或术语:

<?php
    $categories = get_the_category();
    $separator = ", ";
    $output = \'\';

    if ($categories) {

        foreach ($categories as $category) {

            $output .= \'<a href="\' . get_category_link($category->term_id) . \'">\' 
            . $category->cat_name . \'</a>\'  . $separator;

        }
        echo trim($output, $separator);
    }
    elseif ( $terms = get_the_terms( get_the_ID(), \'my-custom-taxonomy\' ) ) {

        foreach ( $terms as $term ) {

            $output .= \'<a href="\' . get_term_link( $term, \'my-custom-taxonomy\' ) . \'">\' 
            . $term->name . \'</a>\'  . $separator;

        }
        echo trim( $output, $separator );
    }
?>
别忘了更换\'my-custom-taxonomy\' (两次)使用实际的slug进行分类。

请注意,通过使用此if/else结构,如果一篇文章同时具有自定义分类法中的类别和术语,则只会显示类别。你可以改变elseif 只是if 在这种情况下,他们希望两者都显示出来。

参考文献:

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在