admin 的 Pluign 选项或 Theme 选项之间有什么实质性区别吗?
我可以找到很多很好的主题相关教程(用于选项页面) - 但没有那么多(或不太清楚)插件选项页面。
遵循主题相关的教程是否会基本相同?(仅考虑激活/停用挂钩会有所不同?)
编辑我 - 只是为了澄清:
我的问题更具体地说,我是否可以按照“主题”教程进行设置,即使我需要“插件” - 如果是这样,我需要更改/注意的点到底是什么..
admin 的 Pluign 选项或 Theme 选项之间有什么实质性区别吗?
我可以找到很多很好的主题相关教程(用于选项页面) - 但没有那么多(或不太清楚)插件选项页面。
遵循主题相关的教程是否会基本相同?(仅考虑激活/停用挂钩会有所不同?)
编辑我 - 只是为了澄清:
我的问题更具体地说,我是否可以按照“主题”教程进行设置,即使我需要“插件” - 如果是这样,我需要更改/注意的点到底是什么..
这个周末,我在 2007 年成为 WP 主题开发人员后编写了我的第一个插件,我遇到了和你一样的问题。事实证明,主题页面基本上只是创建插件页面的简化版本。这通常意味着函数需要更少的参数,你需要考虑的也更少。但这是一把双刃剑,因为它让你对自己想做的事情的自由度降低。
例如:而不是add_theme_page()
您会调用add_menu_page()
或add_submenu_page()
取决于您希望菜单出现的位置。比较论据:
add_theme_page( $page_title, $menu_title, $capability, $menu_slug, $function);
add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position );
wichadd_options_page()
也是一个包装函数add_submenu_page()
。
我注意到的第二件事是Settings API。只要您遵循 Codex,您和您的插件就可以保存,因为它消除了所有实际设置表单布局创建。这是许多教程花费最多精力的地方:创建数百行代码来布局表单。Settings API 有点像一个框架。
我检查了“wordpress 主题选项页面”的所有顶级谷歌教程结果,其中只有两个使用了设置 API(这个和那个)。因此,我建议您不要遵循大多数教程,除非它们使用 Settings API。
就是这样。在 WordPress 中创建插件设置只不过是注册菜单项并通过设置 API 呈现设置。
在 WordPress 中,主题和插件的选项处理方式非常相似。
此外,如果您选择在主题中放置特定选项,则只有在激活该特定主题时它才会处于活动状态,这同样适用于插件。
如果您希望该功能仅在主题激活时可用,那么您可能必须将它们放在主题中,如果您希望它在多个主题中处于活动状态,那么您可能希望将它们放在插件中。
另一个区别是,主题可能有一些插件可能不可用的特殊钩子。
主题和插件的选项/设置页面也不同。
这取决于主题或插件的开发方式。选项通常存储在 wp_options 数据库中。他们都可以从中受益并且基本相同。但在其他情况下,比如一个非常大的插件,开发人员可能会选择创建一个 TABLE 并将选项存储在那里。