Questions tagged «plugin-development»

WordPress插件可轻松修改,自定义和增强WordPress博客。您可以使用WordPress插件添加功能,而无需更改WordPress的核心编程。

10
如何构建插件
这不是关于如何构建WordPress插件的问题。相反,如果有的话,什么指南可以应用于如何组合任何插件的文件体系结构。 其他一些编程语言或库具有组织目录和文件的受控方式。有时,这很烦人,并且突显了PHP提供的自由,但是在另一方面,WordPress插件以其作者确定的任何方式组合在一起。 没有一个正确的答案,但是我的希望是完善我和其他人构建插件的方式,以使它们对其他开发人员更友好地进行剖析,更易于调试,更易于导航,并且可能更加高效。 最后一个问题:什么你认为是组织的一个插件的最佳方式? 以下是一些示例结构,但绝不是详尽的列表。随时添加自己的建议。 假定默认结构 /wp-content /plugins /my-plugin my-plugin.php 模型视图控制器(MVC)方法 /wp-content /plugins /my-plugin /controller Controller.php /model Model.php /view view.php my-plugin.php MVC的三个部分: 该模型与数据库交互,查询和保存数据,并包含逻辑。 该控制器将包含模板标签和功能视图将利用。 该视图负责显示由控制器构造的模型提供的数据。 按类型组织 /wp-content /plugins /my-plugin /admin admin.php /assets css/ images/ /classes my-class.php /lang my-es_ES.mo /templates my-template.php /widgets my-widget.php my-plugin.php WordPress插件样板 在Github上可用 基于插件API,编码标准和文档标准。 /wp-content /plugins /my-plugin /admin …

3
添加多个插件目录
任务 您可以注册register_theme_directory()用于WP安装的添加其他主题目录。遗憾的是,核心并没有提供与插件相同的功能。我们已经有MU插件,插件,插件和主题。但是我们需要更多的资源来改善文件组织。 以下是要完成的任务: 添加其他插件目录 对于每个插件目录,都需要一个新的“标签”,如下所示[1] 附加目录将具有与默认插件目录相同的功能 有什么适合您的? 最佳和最完整的答案将被授予赏金。 [1]用于新插件文件夹/目录的其他选项卡

1
我应该使用自定义帖子类型还是自定义数据库表进行插件开发?
我对编写wordpress插件还很陌生,但是我已经涉足了深层次的工作,我想确保自己在即将进行的大型项目中做得对。 我将大量地将wordpress扩展到一个相当大的Web应用程序中,并希望保持我的数据结构尽可能本地化,以依靠wordpress框架,但是我不知道创建自己的自定义数据库表是否更好或尝试使用自定义帖子类型。 我尚不知道我的所有数据,但是将有许多表(或cpt)被关联起来。我从研究中得出的“氛围”是,我应该避免使用自定义数据库表,但是我不确定如何确定最佳解决方案。 我特别关心三个方面: 如果我走这条路线,每个cpt我需要为我的额外字段分配的发布元字段的数量,如果这样做会使事情“棘手” 使用半复杂的关系过滤器获取报告的查询效率如何 如何最好地管理人际关系,尤其是当我有很多对许多人际关系时 有没有“正确”的方法?感谢您的输入。

10
您使用什么流程进行WordPress开发?[关闭]
我对其他人如何为WordPress开发主题和插件感兴趣。对我来说,管理面板中的浏览器内编辑器不会删除它。目前,我只是使用带有PHP插件(NetBeans)的IDE,从服务器中拉出开发Web目录,在其中进行编辑,推送进行测试,然后再迁移到现场。 我正在寻找其他人如何使用他们选择的工具来管理工作流,以开发,测试和部署主题,插件,并在上线之前针对这些主题测试WordPress的最新版本。 我已将其设为社区Wiki,以便其他人可以共享那里的开发过程。我不希望在这里找到一个正确的答案-您的流程是您自己的,而且我不希望您为自己或其他任何人工作。我只是想通过查看对他人有效或无效的方式来提高开发插件和主题的能力。 这里的另一个问题讨论了支持WordPress开发的特定软件工具。在这里,我正在寻找可以独立于工具应用的更多流程和方法,除了某些任务可能仅在某些工具系列中才能完成。

3
WPINC和ABSPATH有什么区别?
插件开发人员通常会保护自己的插件免受直接访问。我看到了两种方法: if ( ! defined( 'WPINC' ) ) die; 和 if ( ! defined( 'ABSPATH' ) ) exit; WPINC和ABSPATH有什么区别?哪一种是“正确”的方法?




1
带有数组的设置API示例
我将Wrox WordPress插件开发书用作开始使用新插件的主要参考资料,并且我了解所有设置都可以另存为1个数组,但是书中并未提供有关此示例以及我所从事的所有工作的示例从一个例子到另一个例子,在网络上查找似乎是如此不同。康斯坦丁(Konstantin)发表的文章的后半部分让我很接近,但是我真的很想看到一个包含多个字段的更完整的示例。

5
如何检查您是否在WP Admin部分的特定页面中?例如,如何检查我是否在“用户”>“您的个人资料”页面中?
我正在构建一个插件,我想在管理头中添加一些javascript,但仅适用于某些管理页面。我并不是指您自己创建的WordPress页面中的页面,而是现有的管理部分页面(如“您的个人资料”,“用户”等)。是否有专门用于此任务的wp函数?我一直在寻找,我只能找到布尔函数is_admin和动作钩子,但不能找到仅检查的布尔函数。

1
是否可以将wp.media.editor Modal重用于非媒体对话框
展开:我想利用相同的Modal代码/外观(如wp.media.Modal,wp.media.FocusManager中使用的那样)打开我自己的自定义对话框的模式,而不是Media Editor。过去,我曾使用thickbox进行此类操作,但wp.media.Modal似乎是模态技术的未来之路-更不用说它看起来很酷了。 我在JS源代码中打了一点点,并提出了一些可能的解决方案: “借用”代码media-views.js并在我的插件中使用它。 “扩展” wp.media.Modal(毕竟是Backbone View)。 创建一个自定义实现,jQueryUI等。 只是放弃并使用thickbox。 借用似乎比使用wp.media.Model.extend({})危险小,但浪费。我不是jQueryUI模态的忠实拥护者,但是它将完成这项工作。同时,我可以对模式进行自定义实现(或基于另一个lib)。 感觉好像我遗漏了一些明显的东西:是否有人将其拖延了?还是新的媒体库模式代码“太新”以至于无法重用?

4
如何使一个插件需要另一个插件?
我正在构建一个向主插件添加额外功能的插件。理想情况下,在插件管理屏幕中,应禁用“激活”链接,并应添加一个内联注释,以告知用户先安装和激活主插件,然后才能使用当前插件。

2
增强图库的媒体管理器
在WordPress 3.5之后,我想在图库视图上增强媒体编辑器。 我想在右侧添加一个新的选择字段,并将选定的值发送到图库的简码。 我认为,功能wp.media.gallery的wp-includes/js/media-editor.js是默认功能的嵌入式画廊简码。 我想添加一个新参数,该参数的值来自媒体管理器内的选择字段。 我使用了不同的来源,尤其是从这个问题出发,但是Backbone对我来说是个新手,我不知道它是如何工作的。我也玩过钩子print_media_templates,但在Media视图上没有任何结果。 我应该使用什么钩子?

5
是否有任何插件开发框架
由于我是WordPress插件开发的新手,因此我一直在研究许多插件的内部结构。我发现它们大多数都不适合任何模式,因此很难理解它们的工作方式。 我想知道,除了官方文档中描述的方法以外,是否还有更通用的插件开发方法(可能带有框架)。

5
发布元数据表与单独的数据库表
在开发需要数据存储的插件时,使用一种或另一种方法的优缺点是什么? 抄本中给出的解释不详细: 但是,在使用全新表之前,请考虑将插件的数据存储在WordPress的Post Meta(也称为“自定义字段”)中是否可行。Post Meta是首选方法;尽可能/实际使用它。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.