【问题标题】:Combining tags and categories结合标签和类别
【发布时间】:2013-08-07 16:29:36
【问题描述】:

我已经使用自定义标签和类别设置了自定义帖子类型。

我想按国家和类别显示帖子,并且类别需要对所有国家/地区通用。因此,如果用户从下拉列表(或其他)中选择一个国家/地区,则应列出该国家/地区的所有类别。

South Africa
   - Sport
      -- Golf
        --- Irons

一种选择是使这些国家/地区成为所有 PARENT 类别,每个国家/地区都有唯一的子类别。但这最终会变得复杂,并在帖子编辑器中显示大量重复的类别名称列表。你会同意的不是一个非常聪明的方式。

我想到的另一个选项是同时使用标签和类别,其中国家可以添加为标签,然后类别将全部通用。我的问题是如何制作一个动态的国家列表来显示来自特定标签/国家的类别?

您是否可以提出更简单/更好的选择?

编辑 @Mike 谢谢你。这是自从发布 Q 以来我一直在玩的路线。我已经设置了一个自定义帖子类型,其中包含一个名为 Product Categories 的自定义分层分类法和另一个名为 Country 的自定义非分层分类法(标签)。然后我创建了一个新的存档模板,显示所有标记的帖子。目前它显示所有标记的帖子,但我试图让它显示的是标签中的类别列表......如果可能的话。所以现在说我有两个帖子:1. Brown Sneakers 属于 SPORT 的 GOLF 子项并标记为 USA 和 2. 粉红色短裤属于 CLOTHING 的子项 LADIES 子项并标记为 USA... 查看美国标记页面 I想看到一个列表 CLOTHING 和 SPORT(当然还有它的子猫)。不会有很多国家/地区共享运动和服装等类别。

【问题讨论】:

    标签: wordpress tags categories taxonomy


    【解决方案1】:

    由于这个很老的问题在我研究该主题时排名很高并且没有真正提供答案,所以让我指出这两个解决方案/线程:

    1. 这里讨论了组合标签/类别查询的 URL 是如何工作的,以及如何通过重写规则使其变得更好:

    https://wordpress.stackexchange.com/questions/312324/rewrite-url-with-category-and-tag-combined-using-wp-rewrite

    1. 此线程会检查过滤器,以检查通过并遵循已激活标签(或其他分类)的类别查询:

    https://wordpress.stackexchange.com/questions/147820/browse-by-category-and-tags

    【讨论】:

      【解决方案2】:

      我会使用custom taxonomies。您需要为每种数据类型(国家、运动、设备、球队、球员等)进行分类。

      您需要register_taxonomy() 为每一个,并且您可能需要一些分层分类法,因此您可以将它们合并为一个:

      Team/Player Taxonomy:
      
      Team A
          Player A1
          Player A2
      Team B
          Player B1
          Player B2
      

      因此,您必须尝试使用​​最佳解决方案来确定何时使用新分类法以及何时仅使用分层分类法。据我所知,无论哪种方式,您都可以完成同样的事情。

      组织内容的方式:

      • 自定义帖子类型(分层 CPT 添加另一层组织)
      • 自定义分类法(分层 CT 添加另一层组织)

      对于分层分类,您必须手动添加每个子项

      添加自定义分类时,您可以选择将其应用于哪些帖子类型

      在撰写本文时,我突然想到,从自定义帖子类型中的帖子创建自定义分类法并不是一个好方法。我搜索了一下,找到了http://wordpress.org/plugins/cpt-onomies/这个插件,可能会有帮助。

      祝你好运!

      【讨论】:

      • 注意:我意识到我并没有真正给出关于如何继续的明确答案。在开始回答这个问题后,我正在讨论如何编写 WP 内容的组织指南,但是到目前为止我已经输入了...
      • 另请注意:标签和类别分类法,它们是2个默认的,内置分类法。我不会像您的问题所建议的那样尝试“组合标签和类别”,而是创建新的自定义分类法,并给它们起有意义的名称。这样一来,您就可以随意使用。
      • 谢谢@mike 我在原始问题中添加了一些信息,您有什么想法或可以指出的任何地方吗?
      猜你喜欢
      • 1970-01-01
      • 2013-05-02
      • 1970-01-01
      • 2012-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-06
      相关资源
      最近更新 更多