WordPress 框架获得一个新的舒适之家 – IncludeWP
已发表: 2016-07-27今年早些时候(2016 年 3 月),插件审查团队在 make.wordpress.org 上发表声明,官方插件库中不再允许使用框架。
我们决定自己为 WordPress 框架创建一个有价值的存储库,并创建了 IncludeWP。 一个主页,或者更确切地说,一个排行榜,显示 WordPress 插件和主题开发人员的所有开源框架。 为开发商评估当前市场上的产品提供一站式服务。
它最初是一个有趣且令人耳目一新的周末副项目,团队决定在三周前齐心协力,并计划立即发布它。 但是,这些年来,我养成了在从我信任的人那里得到一些反馈之前不发布任何东西的习惯,所以我决定先戳几个来自 WordPress 社区的朋友。
我们得到了很好的反馈和一些 UI 建议,但有一条评论引起了我的大部分注意:来自 Addendio 的 Luca Fracassi 说:“Vova,如果我可以点击一个框架并查看哪些插件和主题实际使用它,那就太酷了。”
“该死的! 这将是惊人的。” 我心想。 但是我们不可能把时间花在手动搜索和添加这些插件和主题上。
IncludeWP 存储库已开始作为 Freemius 团队的一个有趣且令人耳目一新的周末副项目。Tweet
在与 Luca 反复讨论之后,我们意识到我们可以利用 WordPress.org API 和 SVN 来自动识别插件和主题与 WordPress.org 中框架的关联。 所以我们决定联手。
Luca 花了几天时间开发了一个框架识别逻辑并在 .org 上运行它,并友好地公开了一个自定义 API 端点供我们使用该数据。 我们利用 Luca 的端点从 WordPress.org 获取插件和主题数据,并将其呈现在框架页面下。
我们又花了一周的时间才最终确定它,但现在它的功能强大了 10 倍! 开发人员实际上可以看到其他产品正在使用该框架。 本着开源精神,它可以在 GitHub 上供公众使用。
为什么 WordPress 框架、SDK 和库很棒?
代码可重用性很棒! 它实际上是开发基础的一部分。 就如此容易。 看看最流行的在线电子商务平台 WooCommerce,它最初是 Jigoshop 的一个分支。
作为开发人员,我们尝试优化自己的代码并确保零冗余。 但是一谈到其他开发者的工作,我们突然就很挑剔了。
作为一名开发人员,我知道你在想什么……
“没有人能像我一样写代码。” 新闻快讯:那里有许多有天赋的开发人员,所以不要再做势利眼了,开始重用吧!
此外,一些框架被数千名开发人员使用,部署在数十万个网站上,并且已经在生产环境中运行多年。 这些库很可能比您新编写的代码更能证明错误。
“我可以自己构建它,我不需要任何框架”——是的,你可以! 但为什么? 为什么要重新发明轮子? 我知道了; 当它不是你的代码时,会有一个学习曲线。 但另一方面,学习一个有可靠文档的框架肯定比从头开始自己开发所有东西要快。
“为什么我需要开销? 我只使用图书馆处理的一小部分。 哈,框架好臃肿,比我的插件还大!” – 大多数插件都从一个很小的功能开始。 也许今天这就是您所需要的,但是随着您的 WordPress 插件或主题的发展,您可能会添加更多的东西。 拥有坚实的基础将使您的生活更轻松,并在未来为您节省大量时间。 尝试进行长期规划,并选择最适合您的需求和路线图的框架。
底线 - 不要浪费时间一遍又一遍地重写相同的东西。 大约有 20 种不同的框架可以处理自定义字段
为什么我们决定开源这个项目?
我们开始使用 Freemius for WordPress 的原因之一是因为它很棒的社区和开源的心态。 我们坚信开源及其力量,这是我们回馈生态系统的方式之一。
其次,我在宣传代码可重用性。 我能做的至少是为其他开发人员提供在他们的项目中重用我们的代码的选项。 通过重用这个代码库,每个人都可以轻松地为 GitHub repos 创建一个类似的类别类型列表迷你站点。
通过重用这个代码库,每个人都可以轻松地为 GitHub repos 创建一个类似的类别类型列表迷你站点。Tweet
一个 WordPress 框架陷阱——版本控制
WordPress 不是操作系统,不同的插件和主题之间没有孤岛。 此外,WordPress 核心没有适当的库依赖机制。 这意味着如果两个插件使用具有不同版本的相同框架,则可能会触发向后兼容性问题,产生错误,并且在最坏的情况下 - 完全破坏站点。
所以接受我的友好建议:在你选择你最喜欢的框架、库或 SDK 之前,你应该确保它能够处理版本控制。
您应该确保您选择的框架能够处理版本控制。Tweet
如何为您的插件或主题选择正确的框架
这得看情况。
如果我要开始一个新的 WordPress 插件或主题,我会查看以下内容(不一定按此顺序):
- 我会首先检查市场上有什么,以了解框架提供的不同特性和功能集。
- 我肯定会检查这些项目的受欢迎程度。 更受欢迎的项目背后可能有更强大的社区,这意味着应该更容易获得帮助/建议。 这也可能意味着框架的主要错误已经被消除。
- 我会花更多时间研究新框架。 随着 Web 开发实践的进展。 此外,WordPress 核心正在发展,新框架可以更高效,利用新的核心机制——用更少的代码做更多的事情。
- 我会询问来自 WordPress 社区的开发者朋友——我信任的人,并且可以根据他们的经验向我提供真诚的反馈。
我有一个框架! 如何将其添加到 IncludeWP?
十分简单! 该网站是 GitHub 上的一个开源项目,只需 fork IncludeWP repo,将您的框架添加为 src/frameworks 文件夹中的 <name>.php,然后提交 Pull Request。
确保遵循一些简单的准则:
- GPL:该框架必须获得 GPL 许可,因此使用它的插件和主题可以在 WordPress.org 上列出(非 GPL 框架将插件呈现为非 GPL)。
- GitHub:该框架必须在 GitHub 上有一个公共存储库,我们可以链接到该存储库并从中提取统计信息。
- 坚持格式:填写与 src/frameworks 中其他框架相同的所有字段。
- WordPress.org(可选):如果框架已经在 WordPress.org 上列为插件,请添加对插件 slug 的引用。
- 简短描述:保持概述页面的描述简短而甜美。
下一个是什么?
现在轮到你向社区宣传了。 告诉你的朋友,在 Twitter 上分享,在 GitHub 上为项目加注星标……然后重复使用!