如何在WordPress模板中获取父类别名称?我可以通过父类别查询帖子吗?

时间:2009-08-04 15:19:50

标签: wordpress post parent categories

我尝试过在WordPress论坛上获得帮助,但没有运气。无论如何,这是我的问题......

让我们说我正在为每个父母创建10个父类别和2个子类别。我的WordPress帖子属于特定父类别的一个子类别

如何获取父类别名称?我不想要子类别名称?什么WordPress代码会这样做?

还有一个问题......

是否可以使用以下方式通过子类别的父级查询帖子:

但是,我可以执行以下操作,而不是输入cat=1或特定类别的名称:

这样它会自动为点击的任何特定子类别的父级插入和查询帖子吗?

4 个答案:

答案 0 :(得分:5)

要获取父类别名称,请使用get_cat_name()函数,将父项作为参数 - 如下所示:

$cat = get_the_category();
$parentCatName = get_cat_name($cat[0]->parent);

答案 1 :(得分:3)

所有这些答案都不适合我。

我最终成功地显示了帖子的最顶级类别名称:

        $categories = get_the_category();
        $category= '';
        foreach($categories as $childcat) {
            $parentcat = $childcat->category_parent;
            if($parentcat>0){
                $category = get_cat_name($parentcat);
                continue;
             }
        }
        $category = (strlen($category)>0)? $category :  $categories[0]->cat_name;

答案 2 :(得分:1)

找到这个答案,它给你第一个祖先slu ..可以很容易地修改它以给你起名字。

点击此处:http://nick.boldison.com/wordpress/wordpress-get-top-level-parent-category/

<?php
// get parent category slug
$parentCatList = get_category_parents($cat,false,',');
$parentCatListArray = split(",",$parentCatList);
$topParentName = $parentCatListArray[0];
$sdacReplace = array(" " => "-", "(" => "", ")" => "");
$topParent = strtolower(strtr($topParentName,$sdacReplace));
?>

实际上,要获取父名称:

// get parent category slug
$parentCatList = get_category_parents($cat,false,',');
$parentCatListArray = split(",",$parentCatList);
$topParentName = $parentCatListArray[0];

答案 3 :(得分:-1)

Wordpress文档中的大量答案和示例:

get category parents

get the category

(看起来你的原始问题中有些代码片段或其他文字没有出现)