WordPress與靜態HTML:你應該選擇哪種方案搭建網站?

WordPress與靜態HTML:你應該選擇哪種方案搭建網站?

在過去,我們已經談到了WordPress與其他流行的內容管理系統,如與DrupalJoomla,甚至Squarespace的對比。但是,如果你試圖在WordPress和靜態HTML之間決定你的網站該怎麼辦?

在一個基本的層面上,這是一種在使用資料庫驅動的內容管理系統(如WordPress)還是自己編寫所有的HTML/CSS並可能使用一個框架之間的一般性辯論。

為了幫助你做出決定,我們將解釋這些術語的含義,然後跳到每種方法的一些優點和缺點。

WordPress和靜態HTML的區別

最後,一切都以HTML的形式出現在前臺。也就是說,無論你使用的是WordPress還是靜態HTML網站,你的網站的程式碼都將是這樣的:

WordPress和靜態HTML前端程式碼無區別

無論你選擇哪種方法,你的程式碼仍然會是這樣的

重要的區別在於這些HTML是如何產生的。

對於靜態HTML,這個故事很簡單。你,或者你的開發者,寫了程式碼(包括你的內容)。然後,一旦它出現在伺服器上,它就一直是這樣的。沒有後臺處理 – 你的網站總是以其完成的形式存在。

另一方面,WordPress是一個使用PHP和資料庫的內容管理系統。簡單地說,這意味著,當有人訪問你的WordPress網站時,你的伺服器通過以下方式 “組裝” 你的網站:

  • 執行PHP程式碼,把你的網站的HTML版本組合起來
  • 查詢你的資料庫以獲得插入到HTML中的內容

那麼什麼是內容管理系統?

上面,我們告訴你,WordPress是一個內容管理系統,但我們沒有真正解釋這意味著什麼。一個內容管理系統,通常縮寫為CMS,是幫助你建立、管理和修改網站內容的軟體,而不需要直接與程式碼互動

例如,你不需要像靜態HTML網站那樣通過用HTML格式化來手動新增你的內容,你只需要用WordPress編輯器輸入你的內容,WordPress將處理在你的網站上顯示它:

WordPress編輯器的介面

WordPress編輯器的介面

同樣,如果你以後想編輯這些內容,你可以直接進入並使用同一個編輯器進行編輯,而不是需要直接編輯你伺服器上的靜態HTML檔案。

WordPress的優點和缺點

我們稍後會討論靜態HTML網站的一些優點和缺點,但讓我們從整個網際網路超過43.3%的人現在使用WordPress的一些原因開始。

無程式碼的內容管理

WordPress最大的好處是它幾乎可以完全消除你的網站的日常管理中的程式碼。相反,你想採取的大多數行動都可以用一個圖形介面來執行。

通過這個圖形介面,你可以:

  • 建立新的內容
  • 改變你的網站的外觀
  • 改變你的網站功能
  • 配置重要的SEO設定
  • 執行大量其他重要的操作

除非你以HTML/CSS為生(即使你以HTML/CSS為生),否則這種方法將使你更容易管理你網站的各個方面。

輕鬆改變你的網站外觀

每個WordPress網站都需要一個叫做theme的東西。你的主題決定了你的網站在前臺的樣子。要安裝一個新的WordPress主題,你基本上點選一個按鈕或上傳一個檔案,你的網站就會立即採用這種風格:

新增一個新的WordPress主題

你如何新增一個新的WordPress主題

另一方面,在靜態HTML網站中,你用你自己的CSS來控制你的網站的外觀。這不僅在一開始就很耗費時間,而且如果你將來想徹底改變你的靜態HTML網站的外觀,也同樣耗費時間。是的,有一些CSS框架,你可以用來加快這個過程,但它仍然需要更多的工作和專業知識,以便能夠管理。

此外,你需要擔心使你所有的CSS響應(又稱在手機上看起來不錯),而現在幾乎每一個WordPress主題都是預設響應的。

易於增加新的功能

WordPress還提供了一種叫做plugins的東西,使你能夠輕鬆地擴充套件你的網站的功能。想在你的網站上新增一個聯絡表單嗎?在靜態HTML中,你需要處理驗證問題,以及處理使用者提交的資料的問題。使用WordPress,你只需安裝一個外掛…

新增一個新的WordPress外掛

你如何新增一個新的WordPress外掛

困難的差距隨著更大的功能而變得更大。想在你的網站上新增一個論壇?祝你自己做這件事好運。但是對於WordPress,你只需要安裝一個論壇外掛。

你甚至可以快速新增電子商務或社交網路功能。

快速發展和變化

主題和外掛的組合,加上WordPress作為內容管理系統的一般功能,意味著你可以快速地建立起甚至是複雜的網站。

對於一個只有幾個頁面的非常基本的網站來說,靜態HTML可以很快……但是如果你需要任何非標準的功能,WordPress幾乎肯定會讓你更快地建立一個網站。

想要更多的優勢嗎?請看這10個你應該使用WordPress的好理由

你可能也會對《2023年將使用的60種超棒的網路開發工具》感興趣。

使用WordPress有什麼缺點嗎?

你會發現有些人說 “靜態HTML網站載入更快 “或 “靜態HTML網站在谷歌排名更好 “之類的話。但是,這其中的一些說法應該是有根據的。雖然PHP和資料庫確實引入了額外的載入時間和延遲,但讓WordPress的載入時間低於一秒鐘並不難–這已經足夠快了。

你應該問自己,擁有一個稍快的靜態網站是否值得放棄WordPress所提供的優勢?另外,在過去的五年裡,PHP的效能有了很大的提高。在我們最近的PHP基準測試中,我們得出結論,PHP 7.3每秒可以處理的請求(事務)數量是PHP 5.6的3倍。

WordPress 5.0 PHP基準測試

WordPress 5.0 PHP基準測試

還有一些方法,你可以通過使用快取來提供靜態HTML版本的頁面,從而輕鬆否定PHP和資料庫的延遲。這意味著每個頁面的載入基本上都可以快如閃電,就像靜態HTML網站一樣。

快取對一個WordPress網站的影響有多大?下面是對一個WordPress部落格在快取之前和之後的快速測試。

無快取

我們首先在WordPress部落格上進行了禁用快取的測試。

沒有快取的WordPress網站

沒有快取的WordPress網站(Pingdom測試)

正如你所看到的,第一個HTML DOC的載入有明顯的延遲。這是由於它沒有從伺服器上的快取提供服務。

無快取延遲

無快取延遲

有快取

然後我們在WordPress部落格上進行了一次啟用快取的測試。其他方面都沒有改變。

帶有快取的WordPress網站

帶有快取的WordPress網站(Pingdom測試)

正如你所看到的,有一個巨大的改進。事實上,僅僅從伺服器上的快取中提供初始頁面,就減少了32.2%的載入時間

有快取延遲

有快取延遲

說到你可能聽到的排名謠言,有很好的WordPress SEO外掛,讓你通過控制網站的技術和頁面SEO的各個方面來優化你的WordPress SEO。如果WordPress網站在搜尋排名中的表現真的比靜態HTML網站差,你就不會看到它被The WirecutterTechCrunch這樣的大規模平臺使用。

不過,也有一些小的缺點,首先是維護。雖然選擇高質量的WordPress託管可以消除許多最糟糕的維護,但你仍然要負責確保WordPress的核心軟體、外掛和主題的更新和相容。這在今天是相當容易的,但這是你不需要做一個靜態HTML網站的事情。

第二個缺點可能是質量。由於WordPress的極度流行,有很多不好的外掛和主題在那裡。而免費的解決方案有時會完全從地圖上掉下來。在壞的東西中尋找好的東西可能很費時間。

靜態HTML網站的優點和缺點

你聽說過WordPress–但現在讓我們挖掘一下靜態HTML網站的一些優點和缺點。

沒有底層軟體需要維護

我們一秒鐘前就談到了這一點,但讓我們在這裡快速重述一下,因為這是靜態HTML的主要好處之一。

當你使用WordPress和主題/外掛時,你要負責更新所有的底層程式碼並確保沒有任何相容性問題。雖然這很簡單(你通常只需要點選一個按鈕),但這是你需要做的,以保持你的網站安全和運作。

另一方面,如果你寫的是乾淨的靜態HTML,你應該可以不用管它,也不用擔心更新問題。

更容易訪問底層程式碼

雖然WordPress允許你訪問你的網站的所有底層程式碼,但靜態HTML網站將使輸入某些型別的標記變得更簡單。與其需要處理主題模板檔案和WordPress迴圈,一切都在你面前。

例如,雖然有WordPress的結構化資料標記外掛,但你可以在靜態HTML網站上更容易控制模式標記。

建立靜態HTML網站的缺點是什麼?

雖然靜態HTML網站對於一個基本的網站來說肯定是好的,但當你試圖擴大規模時,主要的問題就來了,無論是在內容的數量還是功能上。

這些缺點中的大多數只是與WordPress的優點相反。也就是說:

  • 新增或編輯內容對使用者來說並不友好,因為你需要鑽研程式碼。
  • 增加新的功能需要你自己編碼。
  • 改變你的網站的外觀需要重寫你的CSS。

此外,除非你自己真正懂得HTML/CSS,否則所有這些事情也需要支付給開發人員,而WordPress會讓你自己做這些事情,在大多數情況下。

使用WordPress作為靜態網站生成器

靜態網站生成器與上述兩種選擇略有不同,它們採用內容管理系統的內容,如WordPress,與主題相結合,生成靜態HTML頁面。Jekyll是最流行的一種,你可以用它在GitHub Pages上託管你的整個網站或部落格,用一個命令推送你的新內容。缺點是什麼?設定它並不容易(至少可以這麼說),即使對開發者來說,也可能很費時。

如果你有一個空閒的下午想了解更多關於Jekyll的資訊,那麼請看看Mike Neumegen的這篇文章。另外,像Grav這樣的平面檔案CMS可以讓你更容易管理內容,同時還可以避免對資料庫的需求。

如果你精通技術,甚至有可能得到兩個世界的最好結果,把WordPress作為一個靜態HTML網站生成器。然而,你只需要記住,如果你以這種方式使用WordPress,你將不得不做出犧牲。

  • 你的網站上不會有任何 “實時 “的動態內容,根本沒有。
  • 沒有為你推薦的文章或為每個訪問者改變的小工具
  • 你不能使用WordPress的內建評論系統。

基本上,所有伺服器端(PHP)生成的東西都將成為靜態的,並手動更新。靜態網站生成器將根據你的內容建立一個完整的HTML頁面,一旦完成,無論有多少人訪問你的網站,它都不會被重新生成;除非你在電腦上輸入一個特定的命令。

開發人員解決評論 “問題” 的方法是,要麼根本不使用它,要麼改用基於JavaScript的解決方案,最流行的是Discuz或Facebook評論。

有幾個WordPress的快取外掛,你可以用來建立你的文章和頁面的靜態HTML檔案,但如果你使用Nginx作為你的網路伺服器(如果你沒有,你真的應該這樣做,但這是另一篇文章的主題),你可以直接開啟全頁面快取的開關,並設定它在一天或一個星期後失效。你能 “承受 “的時間越長越好。

接下來會發生的是,第一個訪問者會讓伺服器生成完整的、快取的HTML檔案,任何在預定的過期時間內的連續訪問者都會得到這些檔案。部分伺服器使用 nginx fastcgi cache module 進行頁面快取。你問如何設定它?如果你自己管理伺服器,這裡有一份由DigitalOcean提供的非常詳細的指南,你可以遵循。

Cloudflare Full Page Cache

你也可以用WordPress的Cloudflare頁面規則,通過快取提供整個網站。我們在這裡為您提供了如何為您的WordPress文章和頁面設定Cloudflare快取的所有細節。

這對那些正在開展活動或預期有巨大流量的網站來說是非常有益的。但請記住,如果你完全從快取中提供服務,你很可能會遇到WooCommerce結賬、WordPress管理工具欄和其他各種問題,你需要修復或找到解決方法。

推薦閱讀: 如何為WordPress設定Cloudflare APO

提供兩種最佳方案

我們一般不建議從快取中提供整個網站,除非您有時間對所有內容進行適當的測試。例如,當涉及到WooCommerce時:您可以快取 “靜態” 首頁、分類、產品頁面(如果您不經常改變它們的話),然後是的,它幾乎可以立即載入!但是,一旦有人點選 “新增購物車”,您就必須切換到非快取版本,否則他們就無法使用。但是一旦有人點選 “新增到購物車”,你就必須切換到非快取版本,否則他們會看到購物車總是空的。

我們在為電子商務解決方案和部落格制定了伺服器級別的規則,以確保什麼應該被快取,什麼不應該被快取。

一些例子包括某些WooCommerce和EDD的頁面,如cart、my-account和checkout,被排除在快取之外。當檢測到 woocommerce_items_in_cart 或 edd_items_in_cart 時,使用者會自動繞過快取,以確保結賬過程的順利和同步。

這為你提供了一個快速載入的WordPress網站,但不必擔心東西會壞。

快取元件棧

快取元件棧

如果伺服器提供商沒有快取服務支援,您有希望利用WordPress部落格的動態功能?你可能想看看通過反向代理載入你的網站。

小結

現在是一百萬美元的問題……如果你只是建立一個不太可能改變或需要新內容的小型網站,靜態HTML是一個很好的方法。但對於其他任何事情,WordPress幾乎肯定會是一個更好的選擇。如果你沒有機會接觸到開發人員,這一點尤其正確。

它的易用性,再加上它的可擴充套件性,是它現在為網際網路上所有網站的43.3%提供動力的主要原因。現在交給你了–你會用靜態HTML而不是WordPress建立一個網站嗎?或者你已經走了靜態網站生成器的路線?

評論留言