在過去,我們已經談到了WordPress與其他流行的內容管理系統,如與Drupal、Joomla,甚至Squarespace的對比。但是,如果你試圖在WordPress和靜態HTML之間決定你的網站該怎麼辦?
在一個基本的層面上,這是一種在使用資料庫驅動的內容管理系統(如WordPress)還是自己編寫所有的HTML/CSS並可能使用一個框架之間的一般性辯論。
為了幫助你做出決定,我們將解釋這些術語的含義,然後跳到每種方法的一些優點和缺點。
WordPress和靜態HTML的區別
最後,一切都以HTML的形式出現在前臺。也就是說,無論你使用的是WordPress還是靜態HTML網站,你的網站的程式碼都將是這樣的:
無論你選擇哪種方法,你的程式碼仍然會是這樣的
重要的區別在於這些HTML是如何產生的。
對於靜態HTML,這個故事很簡單。你,或者你的開發者,寫了程式碼(包括你的內容)。然後,一旦它出現在伺服器上,它就一直是這樣的。沒有後臺處理 – 你的網站總是以其完成的形式存在。
另一方面,WordPress是一個使用PHP和資料庫的內容管理系統。簡單地說,這意味著,當有人訪問你的WordPress網站時,你的伺服器通過以下方式 “組裝” 你的網站:
- 執行PHP程式碼,把你的網站的HTML版本組合起來
- 查詢你的資料庫以獲得插入到HTML中的內容
那麼什麼是內容管理系統?
上面,我們告訴你,WordPress是一個內容管理系統,但我們沒有真正解釋這意味著什麼。一個內容管理系統,通常縮寫為CMS,是幫助你建立、管理和修改網站內容的軟體,而不需要直接與程式碼互動。
例如,你不需要像靜態HTML網站那樣通過用HTML格式化來手動新增你的內容,你只需要用WordPress編輯器輸入你的內容,WordPress將處理在你的網站上顯示它:
WordPress編輯器的介面
同樣,如果你以後想編輯這些內容,你可以直接進入並使用同一個編輯器進行編輯,而不是需要直接編輯你伺服器上的靜態HTML檔案。
WordPress的優點和缺點
我們稍後會討論靜態HTML網站的一些優點和缺點,但讓我們從整個網際網路超過43.3%的人現在使用WordPress的一些原因開始。
無程式碼的內容管理
WordPress最大的好處是它幾乎可以完全消除你的網站的日常管理中的程式碼。相反,你想採取的大多數行動都可以用一個圖形介面來執行。
通過這個圖形介面,你可以:
- 建立新的內容
- 改變你的網站的外觀
- 改變你的網站功能
- 配置重要的SEO設定
- 執行大量其他重要的操作
除非你以HTML/CSS為生(即使你以HTML/CSS為生),否則這種方法將使你更容易管理你網站的各個方面。
輕鬆改變你的網站外觀
每個WordPress網站都需要一個叫做theme的東西。你的主題決定了你的網站在前臺的樣子。要安裝一個新的WordPress主題,你基本上點選一個按鈕或上傳一個檔案,你的網站就會立即採用這種風格:
你如何新增一個新的WordPress主題
另一方面,在靜態HTML網站中,你用你自己的CSS來控制你的網站的外觀。這不僅在一開始就很耗費時間,而且如果你將來想徹底改變你的靜態HTML網站的外觀,也同樣耗費時間。是的,有一些CSS框架,你可以用來加快這個過程,但它仍然需要更多的工作和專業知識,以便能夠管理。
此外,你需要擔心使你所有的CSS響應(又稱在手機上看起來不錯),而現在幾乎每一個WordPress主題都是預設響應的。
易於增加新的功能
WordPress還提供了一種叫做plugins的東西,使你能夠輕鬆地擴充套件你的網站的功能。想在你的網站上新增一個聯絡表單嗎?在靜態HTML中,你需要處理驗證問題,以及處理使用者提交的資料的問題。使用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基準測試
還有一些方法,你可以通過使用快取來提供靜態HTML版本的頁面,從而輕鬆否定PHP和資料庫的延遲。這意味著每個頁面的載入基本上都可以快如閃電,就像靜態HTML網站一樣。
快取對一個WordPress網站的影響有多大?下面是對一個WordPress部落格在快取之前和之後的快速測試。
無快取
我們首先在WordPress部落格上進行了禁用快取的測試。
沒有快取的WordPress網站(Pingdom測試)
正如你所看到的,第一個HTML DOC的載入有明顯的延遲。這是由於它沒有從伺服器上的快取提供服務。
無快取延遲
有快取
然後我們在WordPress部落格上進行了一次啟用快取的測試。其他方面都沒有改變。
帶有快取的WordPress網站(Pingdom測試)
正如你所看到的,有一個巨大的改進。事實上,僅僅從伺服器上的快取中提供初始頁面,就減少了32.2%的載入時間。
有快取延遲
說到你可能聽到的排名謠言,有很好的WordPress SEO外掛,讓你通過控制網站的技術和頁面SEO的各個方面來優化你的WordPress SEO。如果WordPress網站在搜尋排名中的表現真的比靜態HTML網站差,你就不會看到它被The Wirecutter或TechCrunch這樣的大規模平臺使用。
不過,也有一些小的缺點,首先是維護。雖然選擇高質量的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建立一個網站嗎?或者你已經走了靜態網站生成器的路線?
評論留言