向已发布的WordPress插件添加功能的正确方法是什么?


8

因此,我四处寻找可以找到有关此问题的某种规则或至少一些通用礼节性指南,却一无所获。

本质上,我想知道当我发现一个WordPress插件(免费,在wordpress.org/plugins/中列出,并包含GNU GP许可证)时应该怎么做,我认为它可以通过在其中添加一定数量的功能而从中受益。

更改代码并包括新功能后,请执行以下操作:

1)提交给插件的当前作者,并希望他/她将其添加到插件中?

2)将“新”插件作为我自己的一个提交到WordPress插件列表中?

3)避免使用这些选项之一。只需更改插件,然后将其自己使用即可。

4)还有其他未在此处列出的内容吗?(暗示在建议部分中提出了建议。)

从许可的角度来看,我看不到任何禁止做出这些选择的禁令。我不知道获取代码,更改代码然后将其作为高级插件出售将有多道德,但是GP许可证似乎也不禁止这样做。

在这种情况下,最佳做法是什么?显然,我不想冒犯该插件的原始作者,或者不想让我在WordPress编码社区中看起来很糟糕。不过,在这种情况下,我认为该插件将从该新增功能中受益匪浅。

怎么说

Answers:


8

开始编写代码之前,请先询问开发人员。

  • 您所需的功能可能已经实现,只是尚未发布。
  • 否则,插件API会在下一个版本中更改,您的代码将无法再使用。
  • 也许作者可以只添加一个钩子,所以您可以将代码实现为单独的插件,而无需更改主插件。

开源的核心思想之一就是协作。始终尝试一起改善。避免发布与现有插件重复90%的内容。您使用户的选择更加困难。

但是,如果您必须编写该改进,而原始插件的开发人员只是拒绝与您合作,请为其他用户的利益公开您的代码。

在wordpress.org上托管的插件许可证将始终允许此类更改或插件。


同意Toscho。我个人总是对用户提交的代码持开放态度,并且总是会添加额外的钩子和过滤器,以便用户可以从另一个插件自定义我的代码。
helgatheviking 2014年

同意Toscho和@helgatheviking。就个人而言,我维护一个git repo,当人们做出贡献时,我会喜欢它。
Andrew Bartel 2014年

在这里与任何人不同意,但是最好的选择是检查源代码,以查看是否可以通过使用已经实现的钩子(动作/过滤器)修改功能,而无需从插件中更改任何原始代码。第二个最佳选择是在插件的git存储库上添加一个请求请求,请求添加一个钩子(一个请求请求是一种更好的“联系作者”结构化方式)。如果这些都不起作用,那么该考虑其他选项了。
2014年
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.