Cromwell CMS:使用Next.js重寫的全新WordPress免費開源專案

banq發表於2021-10-19

很多非程式設計人員想要一個獨立的平臺,他們可以自己簡單地管理和定製。這是使 WordPress 仍然如此受歡迎的主要原因之一。否則,每個人都會聘請開發人員來製作一個超級快速和酷炫的網站。
現在有一個可以涵蓋所有現代前沿技術的WordPress 解決方案。React靜態預渲染用於前端、成熟和可維護的後端(例如 Nest.js 和 TypeORM);GraphQL API 在 CMS 開發中大放異彩,終端使用者可以在其中構建任何型別的前端。
Cromwell CMS 是一組可以獨立安裝和啟動的軟體包和服務。它繼承了微服務架構的優勢,只需執行一個 npm 或 yarn 命令就可以更輕鬆地更新 CMS。我也可以將其稱為無頭 CMS,因為可以使用任何自定義前端執行 API 伺服器。
 
有 4 個主要服務:
  • 1. API 伺服器服務。API server 是用 Nest.js 和 TypeGraphQL 編寫的,REST API 用於事務,GraphQL 用於資料流。這兩種型別的 API 都可以透過外掛擴充套件(關於它下面)。
  • 2. 前端服務(Next.js)。基本上,它是一個自定義的 Next.js 伺服器。
  • 3. 管理皮膚服務。提供管理皮膚的檔案。
  • 4. 管理服務。此服務根據使用者 GUI 輸入啟動、監視和重新啟動其他服務。例如,在 WordPress 中更改主題更容易,但是對於 Next.js,我們必須使用另一個應用程式構建重新啟動伺服器

  

主題引擎
所有主題都是 npm 包。只需在 package.json 中安裝一個具有特定屬性的包,CMS 就會識別它並在管理皮膚中顯示一個主題。然後使用者可以選擇一個主題,CMS 將從 node_modules 中的主題包中獲取準備好的應用程式構建,將其放置在工作前端目錄中並重新啟動 Next.js 伺服器。
雖然透過 npm 安裝對開發人員來說很方便,但聽起來並不友好。所以我決定更進一步,在管理皮膚中實現了用於包管理的 GUI。當使用者進入主題或外掛市場(在管理皮膚 GUI 中,與 WordPress 中的“新增新外掛”相同)並單擊“安裝”時,CMS 在內部執行 yarn 命令以新增包。刪除/解除安裝時也會發生類似的情況。
然後每個主題都可以在管理皮膚拖放主題編輯器(類似於網站構建器)中高度可定製。使用者可以移動塊、更改文字、影像、新增外掛等。React 使我們能夠提供開箱即用的此類系統。
Cromwell CMS builder遵循程式碼優先的方法,這是我認為構建網站的正確方法。沒有在故障網站構建器中從頭開始製作的佈局
 

外掛
外掛是可以匯出擴充套件或訂閱操作的包(與 Wordpress 中的鉤子相同)。外掛使您能夠使用最好的(或至少是最好的)框架構建您的應用程式。您可以匯出自定義 Nest.js 控制器、TypeGraphQL 解析器、TypeORM 實體等。由於 REST 和 GraphQL API 作為外掛作者都是可擴充套件的,因此您可以選擇最適合您的應用程式的內容。在前端,您可以為管理皮膚或主題前端註冊小部件(使用者必須將您的外掛放置在主題編輯器中)。有關更多資訊,請參閱我們的指南。外掛可以安裝在管理皮膚中,所有擴充套件都將自動應用,無需任何手動 CLI 命令。
  

優點與用處

  • - 由於 React 和 Next.js 靜態預渲染頁面的強大功能,超快的前端體驗。
  • - 線上商店和部落格平臺。除了提供最前沿的技術外,它還必須具有不錯的管理皮膚體驗,不比眾所周知的 CMS 差。基於Editor.js 的現代塊樣式文字編輯器
  • - 免費的全功能線上商店和部落格主題。免費外掛。那個,我會新增更多。使用者可以簡單地從任何其他 CMS 轉向免費開始嘗試或使用 Cromwell CMS。
  • - 易於安裝和使用主題和外掛。在管理皮膚 GUI 中一切正常。網站建設者。
  • - 無需 Web 開發人員
  • - SEO友好。每個頁面都有靜態預渲染的 HTML。CMS 允許編輯 SEO 元標記,提供自動生成的站點地圖和 robots.txt。
  • - 遷移。將您的資料從其他 CMS 匯出到 Excel 檔案並匯入。
  • - 電子郵件、付款和其他整合。


 

相關文章