我正在开发一个将使用自定义字段的插件,但我很好奇是否有办法知道是哪个插件/库创建了这些自定义字段。
WP没有在数据库中存储任何关于post meta和插件接触它的meta信息。WP根本不会对插件进行沙箱处理,所以一旦加载插件,就可以将其视为所有代码。因此,WP核心代码与任何插件代码处于同等地位
我之所以试图找到这种区别,是因为我可以在获取这些字段的数据时使用正确的函数,所以对于ACF,我会对Metabox使用get\\u field()。io我会使用rwmb\\u meta,如果它们是定制的,我会使用get\\u post\\u meta()。
您可能能够使用每个插件的API来获取注册的字段并对其进行比较,但您需要编写依赖于了解这些插件如何存储数据的内部结构的代码。您需要为希望支持的每个插件提供开发人员支持。
我在我的数据库中查找,看看是否能找到每个自定义字段的独特之处,但什么都没有跳出来。
这些数据根本没有存储在数据库中,WP本身也没有尝试存储它。您必须通过插件作者的支持渠道询问他们。
有没有办法告诉我们哪个插件/库创建了一个特定的自定义字段?
不,不使用WP函数和API。
可能是ABC示例metabox库使用了以abc_
你可以用,但如果你运气好的话。或者,XYZ库让您通过PHP注册字段,它们的键和值具有可预测的格式。你得问问他们。
遗憾的是,你没有提供任何背景来说明你为什么要这么做,所以很难给出建议。请记住,使用get_post_meta
. API,如get_field
是否都有包装函数get_post_meta
这增加了额外的逻辑。
但是请记住,第三方插件在这里是非主题的,您不能问ACF特定的问题等,这里也不是问这些问题的最佳场所