问题描述

许多 Wordpress 功能遵循命名约定,可能最知名的是 the_*()功能,如 the_post(),用于 The Loop

显然,is_*()系列功能属于 Conditionals 。但是,由以下函数前缀表示的常见主题是什么?

  • add_*()

  • register_*()

  • wp_*()

  • wp_insert_*()

在我看来,wp_insert_*()功能都在数据库上执行 INSERT 语句。也就是说,它们改变了应用程序的状态。它是否正确?

在我看来,register_*()功能不影响数据库。也就是说,它们使结构仅适用于当前页面调用。它是否正确?

wp_*()功能有一个共同的主题吗?这只是一个不再执行的旧的 pseudo-namespace 吗?

add_*()功能似乎是最不合逻辑的。有些影响数据库,如 add_post_meta(),有些不 add_theme_support()add_*()功能中常见的是什么,为什么不叫 wp_insert_post_meta()register_theme_support()一致性?

最佳解决方案

甜言蜜语是不要让您的头脑超过命名约定或 WordPress 的一致性,因为这些不存在”standards” 。

诚然,WordPress 不会遵循任何固定的规则或标准,即使有一本关于 WordPress 开发人员编码标准的手册。是的,如果他们会坚持某种可预测的模式,那将是很好的,但他们不会。

WordPress 已经 10 多岁了,从来没有像今天那样大。在那段时间里,许多核心开发人员来了,而且因为今天的 WordPress 是一个社区项目,任何人都可以向任何人提交关于改进,新功能等的想法,您会发现很多不同的编码风格和”standards”(如命名约定) 内核。

如果要单独使用命名约定在基于 addregisterthe 之类的领先字符的函数之间找到一些常见的模式,那么这里完全错误。

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。