Questions tagged «plugin-development»

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

30
插件开发的客观最佳实践?[关闭]
启动社区Wiki,以收集用于插件开发的客观最佳实践。这个问题的灵感来自@EAMann对wp-hackers的评论。 想法是就可能的客观最佳实践进行协作,以便我们最终可以在某些社区协作审核过程中使用它们。 更新:在看到前几个回答后,很明显,我们每个答案只需要一个想法/建议/最佳实践,人们应该查看列表以确保发布前没有重复。

5
在WP插件中启动类的最佳方法?
我已经创建了一个插件,并且当然是我自己,我想采用一种不错的面向对象方法。现在,我一直在做的事情是创建此类,然后在下面创建此类的实例: class ClassName { public function __construct(){ } } $class_instance = new ClassName(); 我以一种更多的WP方式来启动该类,然后我碰到人们说他们更喜欢拥有一种init()功能而不是一种功能__construct()。同样,我发现一些人在使用以下钩子: class ClassName { public function init(){ } } add_action( 'load-plugins.php', array( 'ClassName', 'init' ) ); 通常认为在负载下创建WP类实例并将其作为全局可访问变量的最佳方法是什么? 注意:作为一个有趣的观点,我注意到虽然register_activation_hook()可以从中调用__construct,但是不能init()使用第二个示例来调用。也许有人可以启发我这一点。 编辑:感谢所有的答案,关于如何在类本身中处理初始化问题,显然存在很多争论,但是我认为通常存在相当不错的共识,这add_action( 'plugins_loaded', ...);是真正开始初始化的最好方法... 编辑:只是使事情变得混乱,我也看到了这个用法(尽管我自己不会使用此方法,因为将一个很好的OO类转换为一个函数似乎违反了它的观点): // Start up this plugin add_action( 'init', 'ClassName' ); function ClassName() { global $class_name; $class_name …

6
我的代码放在哪里:plugin或functions.php?
是否有一种易于理解的方案来确定插件或主题的代码属于哪种代码functions.php? 目前有 很多 情况下,许多辩论有关的话题,主要是因为有关于WordPress的内部运作的一些误解。我是在根据事实而不是根据观点寻求答案。 它应该说明如何处理这些问题(可能还有更多): 自定义帖子类型和分类法 联系表格 简码 自定义小部件 add_theme_support( 'automatic-feed-links' ); SEO功能,例如自定义meta元素 主题切换 双方通常都有利弊。我们为您的functions.php文件提供的最受欢迎的最佳代码收集问题有很多代码片段,这些答案至少是值得商de的。 我们需要初学者可以理解的标准,也许还有清单,并附上原因。 另请参见Chip Bennett在我们的元网站上的相关问题:专门要求“没有插件”的解决方案的问题 相关:我在哪里或在网上其他地方找到的代码片段放在哪里?

3
第一个子菜单项的add_menu_page()名称不同
该add_menu_page文件说,通过菜单标题作为第二个参数: add_menu_page('Page Title', 'Menu Title', ...); 当以后通过添加更多页面时add_submenu_page,主页将成为子菜单中的第一项: 但是,我希望列表中的第一项具有不同的名称(但仍指向同一页面),即Wordpress本身的方式: 如何在我的插件中完成此操作?

18
WPSE插件存储库:来自WP-Answers的插件
链接您的WPSE插件 如果您回答了一个问题并用代码制作了一个插件,那么这里就是您共享它的地方。 想法:在测试阶段@MikeSchinkel的 一条旧评论,他写了“我想知道华盛顿州会有多少插件”之类的内容。 “规则” 写一个简短的一行描述插件的作用。 告诉其用法:模板标记,简码,小部件,即插即用。 在github / bitbucket / whatever或wp.org仓库中的答案中链接到您的插件。 请为每个答案链接一个插件。 如果您有一些可以很好地用作插件的答案,只需修改您的A并将其链接到此处即可。 如果您的插件后来变成了商业插件,则可以在此处发布链接。 如果您的插件不是cc- 以及 GNU GPL 2许可的,请提及许可。 笔记: 我在此答案中添加了一个名为wpse-plugin的标签。请编辑Q(您的答案最终以插件的形式出现)并添加标签,或要求主持人这样做。 我会在此处添加任何答案/插件的投票。 也请加入有关meta的讨论。 重要说明:关于许可证 至于关于版权和开放源代码许可1)的大量讨论,我想提到的是,如果作者未提及,这些插件将在cc-license 和 GNU GPL 2许可下运行。 1)一些相关的讨论示例: @EAMann 乔斯特·德·沃克

27
用于WordPress主题和插件开发的软件?[关闭]
您使用什么软件来满足WordPress相关需求? 请说明您的操作系统。 在Windows XP上,我使用: Filezilla(FTP) notepad ++(用于读取PHP / CSS文件) firebug(firefox扩展,允许我使用网站元素) 我不经常使用的其他东西,但我想更多使用-xaamp(WP的本地版本)-github / SVN(文件的版本控制系统) 你呢?



8
如何以正确的方式在插件中包含PHP文件
我的问题是,在主插件文件上包含如下所示的PHP文件时: include(WP_PLUGIN_URL . '/wordpress-group-buying/ipn/paypal-ipn.php'); // or include_once(WP_PLUGIN_URL . '/wordpress-group-buying/ipn/paypal-ipn.php'); // or require(WP_PLUGIN_URL . '/wordpress-group-buying/ipn/paypal-ipn.php'); // or require_once(WP_PLUGIN_URL . '/wordpress-group-buying/ipn/paypal-ipn.php'); 在该文件上,我调用了WordPress函数,例如: add_action('hook', 'callback'); 我得到: 致命错误:调用未定义函数add_action() 现在在您说“使用if(**function_exists**('add_action')){” 之前,如果我使用它,那将是行不通的。 问题: 正确的方法是什么? 有什么区别include,include_once,require做当我使用巫婆?


3
过滤钩和动作钩之间的区别?
最近,我一直在更深入地研究插件API,我想知道action和filter挂钩之间的真正区别是什么。它们都是接收数据作为参数的事件,它们似乎都可以做相同的事情。 显然,我看到在操作发生时会调用操作,在处理数据时会调用过滤器,但这似乎只是语义上的区别。 除了语义及其用途之外,它们之间还有什么真正的区别?



16
您如何调试插件?
我是插件创作的新手,调试时很费力。 我使用了很多回声,而且草率而丑陋。 我确定有更好的方法可以执行此操作,也许是带有调试器的IDE,我可以在其中运行整个站点(包括插件)吗?

5
以管理员风格创建表?
推荐的用表格创建页面的方式是什么,表格的样式在管理区域中显示帖子或用户? 我正在扩展Cache Images插件,它包含一个包含域的表以及该域中的许多图像。因此,没有可用于构建的等效现有表(在该问题的第一个版本中,我询问了一个包含帖子的表,但是可以(也许)扩展现有的post表)。 我应该以帖子概述页面为基础,以开头<table class="widefat">,还是现在有更好的功能来处理?您是否知道我可以基于工作进行分页的干净,空的示例?

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.