Jamstack网站通常是由静态站点生成器(SSG)构建的,并在GitHub等平台上托管,为通过拉动请求提供了一个独特的社区供款机会。这种方法由CSS-Tricks等网站使用,提供了几种优势:
- 具有成本效益且易于部署: SSG通常是免费且易于部署的,非常适合MVP或概念验证项目。
- 增强的安全性:仅服务静态文件可最大程度地减少安全性漏洞。
- 可伸缩性:现有的托管解决方案可以轻松处理增加的流量。
- 社区贡献:直接在存储库中的内容允许轻松提出请求,从而促进社区参与。
但是,对于非技术贡献者来说,传统的拉请求过程可能会令人生畏。本文探讨了一种更简单的方法:使用HTML表单生成拉请请求。
挑战:精简贡献
分叉,了解内容格式以及可能建立本地开发环境的复杂性可以阻止潜在的贡献者。需要采用更用户友好的方法。
解决方案:带有查询参数的github拉请求
GitHub允许使用特殊格式的URL中的查询参数进行预填充拉的请求信息。这使我们能够创建一个简单的HTML表单,该表单生成此URL,从而简化贡献过程。
构建表格并产生拉动请求URL
让我们考虑一个方案,我们希望将资源添加到无服务器站点,类似于CSS-Tricks的无服务器网站。每个资源都需要:
- 标题
- URL
- 作者
- 标签
- 描述
可以创建HTML表格来收集此信息:
<script> // JavaScript to generate and redirect to the GitHub pull request URL (omitted for brevity, see original article for details) </script>然后,JavaScript用于:
- 收集用户输入。
- 生成代表新资源文件的格式字符串。
- URL字符串编码。
- 用编码的字符串作为查询参数构建GitHub拉请求URL。
- 将用户重定向到此URL。
进一步的增强
可以通过:
- 预填充表单数据:使用API(如原始文章中提到的那样)自动根据提供的URL填充标题和描述等字段。这减轻了用户的输入负担。
- 与其他服务集成:通过与其他API集成以进行其他数据处理或验证来扩展功能。
结论
此方法为静态站点生成器提供了最小的CMS解决方案,从而简化了社区的贡献。通过自定义表单和查询参数,它可以适应各种内容格式和数据结构。这种方法降低了贡献者的进入障碍,从而促进了更具包容性和协作的环境。
以上是用简单的HTML表单生成静态内容的拉动请求的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

Atom编辑器mac版下载
最流行的的开源编辑器