所以你有三个问题
问题1,自定义分类法帖子类型您的第一个问题是对什么是分类法和帖子类型的误解。没有自定义分类法帖子类型。分类法和帖子类型是两种不同的东西。
帖子类型是特定类型的帖子/内容片段。E、 g.帖子、页面、附件等
分类法是对特定类型的帖子进行分组/分类的方法,例如颜色、大小、位置
问题2,覆盖主题和子主题,子主题的工作方式与您想象的不同,也不一样functions.php
. 是的,如果父主题模板存在,则加载子主题模板,而不是父主题模板,但这是一个模板化的东西,而且只是一个模板化的东西。
functions.php
是一个可以放置代码并使用WordPress API的地方。插件也是一个可以放置代码和使用WordPress API的地方。两者功能相同,只是加载时间略有不同。
所以一个主题functions.php
不是特殊的,它不是模板,也没有被子主题覆盖
法典明确指出:
与风格不同。css,功能。子主题的php不会覆盖父主题的对应主题。相反,它是loaded in addition to the parent’s functions.php. (具体来说,它是在父文件之前加载的。)
所以当你打电话的时候register_post_type
, 您没有覆盖父主题,父主题尚未加载!如果父主题在其functions.php
, 您需要将一个函数附加到稍后发生的挂钩上,这将撤消父主题所做的操作。WordPress无法跟踪父主题中发生了什么和没有发生什么,以便您可以神奇地将其释放,这是不现实的,尤其是当您考虑可能已添加的操作事件和挂钩时。
问题3,数据你有一个帖子类型,你有一个dallas_practice_area_letter
分类学您需要按城市对所有这些进行分类(我假设达拉斯的所有实践都在达拉斯?)您的解决方案是在每个城市的新名称下创建一个全新的帖子类型和分类法。
这不会扩展,而是注册一个名为dallas_practice_area_city
, 并用它来标记每个机构在特定的城市。这样一来,您就不需要每次添加新的城市或地区时都使用新的帖子类型,从而避免了处理查询的巨大痛苦,并且完全避免了将实践输入错误的城市帖子类型和必须移动的问题。