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中文網其他相關文章!

前幾天我得到了這個問題。我的第一個想法是:奇怪的問題!特異性是關於選擇者的,而在符號不是選擇器,那麼...無關緊要?

在這篇文章中,我們將使用我構建和部署的電子商務商店演示來進行Netlify,以展示如何為傳入數據製作動態路線。這是一個公平的


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Dreamweaver Mac版
視覺化網頁開發工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版
中文版,非常好用

WebStorm Mac版
好用的JavaScript開發工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。