5

我尝试在 WordPress 论坛上寻求帮助,但没有成功。无论如何,这是我的问题......

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

如何仅获取父类别名称?我不想要子类别名称?什么 WordPress 代码可以做到这一点?

还有一个问题...

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

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

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

4

4 回答 4

5

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

$cat = get_the_category();
$parentCatName = get_cat_name($cat[0]->parent);
于 2010-02-26T23:14:16.377 回答
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;
于 2011-12-13T00:39:39.450 回答
1

找到了这个答案,它给了你第一个祖先蛞蝓。它可以很容易地修改为您的名称。

在这里得到它: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];
于 2011-02-23T02:32:26.947 回答
-1

Wordpress 文档中有很多答案和示例:

获取类别父母

获取类别

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

于 2009-08-04T17:48:47.523 回答