Php ExpressionEngine 3-使用2个单独的类别组设置父/子类别

Php ExpressionEngine 3-使用2个单独的类别组设置父/子类别,php,expressionengine,expressionengine3,Php,Expressionengine,Expressionengine3,我有一个ExpressionEngine 3网站。我有两个独立的类别组: Course Type (ID = 3) Course Category (ID = 5) 我想要的层次结构是课程类型>课程类别。例如: 电子学习(课程类型) 健康与安全(课程类别) 风险管理(课程类别) 等等 课堂课程(课程类型) 危险(课程类别) 预算(课程类别) 等等 我有一个名为training\u courses的频道,它有分配给课程类型和课程类别的各种频道条目 我的模板包含课程类型的选项卡,例如 |电

我有一个ExpressionEngine 3网站。我有两个独立的类别组:

Course Type (ID = 3)
Course Category (ID = 5)
我想要的层次结构是课程类型>课程类别。例如:

电子学习(课程类型)

  • 健康与安全(课程类别)
  • 风险管理(课程类别)
  • 等等
课堂课程(课程类型)

  • 危险(课程类别)
  • 预算(课程类别)
  • 等等
我有一个名为
training\u courses
的频道,它有分配给课程类型和课程类别的各种频道条目

我的模板包含课程类型的选项卡,例如

|电子学习|课堂课程|

我要做的是显示
training\u courses
中的条目,这些条目在相应的课程类型->课程类别标题下进行分类。如果没有条目,则隐藏课程类别标题

我不知道如何实现这一点,因为它似乎依赖于对
exp:channel:categories

我有这个

{exp:channel:categories style=“linear”channel=“training\u courses”show\u empty=“no”}

。。。但是这个查询的问题是它没有区分课程类型和课程类别,所以它显示了一个完整的列表,例如

  • 电子学习
  • 健康和安全
  • 风险管理
  • 课堂课程
  • 危害
  • 预算

如何区分这两种类别,然后提取它们下面的频道条目?是否应将其设置为具有父/子层次结构的1个类别?

答案似乎是您需要使用一个具有父/子设置的类别

如果有人对如何用两个单独的建议来完成它有任何建议,请告诉我

EE在输出和过滤类别时非常糟糕。从

如果指定要显示的子类别,则还必须包括要显示的父类别


那太好了。但是如果您想显示子类别而不是父类别,该怎么办?慢拍

可能会有第三方附加组件实现您的目标。例如(我自己可能没用过)。@AllInOne谢谢。最后,我在模板中使用了本地EE代码。如果您执行诸如
{If category_id!=1&&parent_id==1}
之类的操作,该操作将获取父id==1下的子类别,但不包括父类别。这不是很难做到,但奇怪的是,Ellisab构建了诸如
show=
之类的函数,而这些函数并没有考虑到这类问题。