两个插件共享相同的自定义帖子类型注册

时间:2015-07-04 作者:Curious George

我有两个插件插件插件A和插件B注册了相同的帖子类型exp,aws\\U employee。每个插件提供不同的功能,但它们共享的帖子类型完全相同。

如果我先激活插件A,然后激活插件B,插件B不会激活,因为插件B尝试注册相同的帖子类型。

我希望插件B检查aws\\U employee type是否已注册,然后是否要重用它。请注意,插件B可能会注册其他帖子类型。我该怎么做?

概念模型:
插件A
-帖子类型A
-帖子类型B
-帖子类型C(共享)
-自定义分类法A-自定义分类法B-自定义分类法C(共享)
插件B
-发布类型C(共享)
-自定义分类法C(共享)-自定义分类法D-自定义分类法E
-Post type D
-Post type E

7月5日更新:
插件A和插件B提供截然不同的功能,但它们共享数据(帖子类型)。插件A的目标用户部分(用户组A)不希望使用/支付/查看/安装插件B。另一部分(用户组B)希望在同一安装中使用插件A和插件B。首选解决方案必须同时适应用户组A和B。

1 个回复
SO网友:webtoure

您可以使用get_post_types 函数来获取和搜索到该点的已注册帖子类型(theinit 钩子,通常在其中注册自定义帖子类型)。您可以使用稍后的钩子,如wp_loaded 在尝试注册帖子类型之前进行此检查,以防其他插件(与您的任何插件都不相关)已经注册了它。

结束

相关推荐