php生成所有wordpress类别

时间:2018-05-03 12:23:06

标签: php wordpress

我有一点问题。我想显示连接到wordpress帖子的所有类别。

我找到了几个代码和插件,但所有代码都有问题。有些不显示正确的锚文本,其他不链接到正确的URL。 所以我把不同地方的工作部件放在一起,并将它们放在下面的代码中,并将其工作。 问题是它不生成所有连接类别的链接,它只显示1个单一类别的链接(第一个连接到帖子)

代码有什么问题?为什么它不会显示所有连接类别的链接。我现在已经工作了2天,我放弃了。



<?php
$the_cat = get_the_category();
$category_name = $the_cat[0]->cat_name;
$category_link = get_category_link( $the_cat[0]->cat_ID );
?>
<?php 
global $post;
$category = reset(get_the_category($post->ID));
$category_id = $category->cat_ID;
?>
<a class="button" href="<?php echo get_category_link( $category_id ); ?>"title=”<?php echo $category_name ?>”  ><?php echo $category_name ?></a>
&#13;
&#13;
&#13;

3 个答案:

答案 0 :(得分:3)

请尝试此代码

<?php
$category_args_query = array(
'orderby' => 'name',
'parent' => 0,
'hierarchical'  => 1,
'number'=> 10
);
$categories = get_categories( $category_args_query );?>
<ul>
    <?php 
    foreach ( $categories as $category ) 
    { ?>
        <li><a href="<?php echo get_category_link($category->term_id ); ?> "><?php echo $category->name;  ?> </a></li> 
        <?php 
    }
    ?>
</ul>

答案 1 :(得分:2)

如果要显示与帖子详细信息页面和存档页面上的帖子相关的类别,请在子主题functions.php中添加此代码,并调用要显示它的功能。

function postsCategories()
{
    $categories_list = get_the_category_list( esc_html__( ', ', 'your-text-domain' ) );
    $allowed_tags_before_after=array('span' => array('class'=>array()),'i'=>array('class'=>array()),'a'=>array('class'=>array(),'href'=>array(),'rel'=>array()));

        if ( $categories_list )
        {
                printf(wp_kses(sprintf(__('<span class="blogmeta cat-links"> <i class="fa fa-folder-open"></i> %1$s </span>','your-text-domain'), $categories_list ),$allowed_tags_before_after)); 
        }
}

在模板中调用:<?php printf(__('%s','your-text-domain'),postsCategories()); ?>

答案 2 :(得分:0)

实际上只有<?php the_category(', ') ?>就足够了(在WP while循环中)。如果有多个类别,则,确定应该介入的内容。