7 個 WordPress 初學者常犯的錯誤

本文參考資料為 7 Mistakes Beginner WordPress Users Make, 原作者 Kevin Muldoon。

對於大多數的人來說,WordPress 是他們在網路上架設網站所使用的第一個架站程式。有鑑於此,WordPress 初學者經常犯了一些基本的錯誤。

在這篇文章裡,我想談談許多 WordPress 使用者第一次使用該平台時所會遇到的錯誤,來看看你是否有一樣的問題。

 

1. 將 WordPress 安裝於”WordPress”子目錄

WordPress 壓縮檔將所有核心檔案放在一個名為 “WordPress” 的資料夾裡。初學者經常犯的錯誤之一是把整個資料夾以 FTP 方式上傳,而不是僅上傳裡頭的目錄及檔案。這導致他們的網站網址變成 free.com.tw/wordpress 而不是 free.com.tw 。

WordPress 的確允許使用者將它安裝在不同的目錄,然而對大多數的人來說,將 WordPress 安裝到相同的目錄是比較簡單、易懂的,通常會安裝於你網域名稱的根目錄,或是一個名為 blog 的子目錄。

 

2. 沒使用固定網址

簡單來說,WordPress 預設的網址結構為 /?p=<postid>,顯示的網址像是 free.com.tw/?p=57 而不是使用較好記憶的 free.com.tw/big-news/

多數的初學者沒有將預設的固定網址結構更改為對用戶更友善的選項。這有時候也被稱為「乾淨的鏈結」。


WordPress「固定網址」設定頁面。

我在大多數的網站使用文章名稱(/%postname%/)作為我的網址結構,這可以使鏈結更短,也允許我在網址裡插入關鍵字(要做到這點,只要在文章編輯器變更文章代稱即可)。新聞網誌可能每天會發佈數十篇的文章,可以使用日期和文章名稱(/%year%/%monthnum%/%day%/%postname%/)來避免因為重複的文章代稱而產生問題。分類及文章代稱(/%category%/%postname%/)是另一個很熱門的選項。

在過去,/%postname%/ 被認為會對網站的效能產生負面影響。值得慶幸的是,這個問題在 WordPress 3.3 後就獲得改善。因此,無論是從效能或 SEO(搜尋引擎最佳化)的角度來看,你選擇那一個固定網址結構並沒有太大的差異。

欲從 WordPress 控制台來變更你的網址結構,你的 .htaccess 檔案必須是可寫入的。要這麼做,WordPress 建議你將 .htaccess 檔案權限變更為 644 。

如果 WordPress 控制台無法更新 .htaccess 檔案,WordPress 會依照你所選擇的固定網址結構來給你適當的程式碼,你必須手動更新 .htaccess 檔案。你可以從虛擬主機的檔案管理或使用 FTP 來更新 .htaccess 檔案。


.htaccess 也能夠透過 FTP 來手動更新。

 

3. 發佈未完成的頁面

新手時常將未完成的頁面發佈到網站上。初學者會犯的錯誤之一,就是在網站還未準備就緒前,就將網站推出,導致於訪客在點選選單的鏈結時,常常看到不完整的頁面,或是「即將完成」、「即將更新」等字樣。

原則是你不應該連結到任何尚未完成或不完整的頁面。這樣會嚇跑你的訪客,甚至給人不夠謹慎的印象。

我的建議是等到網站完全完成後,再將網站上線、開放,你可以使用 Maintenance Mode 之類的外掛,並在首頁告知你的網站上線日期。

 

4. 安裝不必要的外掛

如果沒有計畫繼續使用某個外掛,應該盡快將它停用、移除,而不是留在外掛列表裡。

WordPress 初學者通常不會這麼做,他們會安裝大量的外掛,無論是有用到或是沒用到的。安裝大量的 WordPress 外掛是沒必要的,因為這會降低網站的速度,並增加網站耗費的資源。

我鼓勵你只使用對於你網站有正面幫助的外掛。不要安裝太多不必要的小工具或統計功能,這麼做只會讓網站更慢。

 

5. 不更新 WordPress

隨時把你的 WordPress、佈景主題和外掛更新到最新版本是相當重要的,如果不這麼做可能會增加被黑客攻擊的機會。

WordPress 舊版本時常存在一些已知問題,這也是為什麼在 2013 年 10 月發佈的 WordPress 3.7 會加入一個全新的自動更新功能,這可以讓重要維護及安全修復即時更新至你的網站。

在預設的情況下,如果你使用 WordPress 3.7 或更高版本,WordPress 核心會自動更新。

外掛及佈景主題更新則不是預設的。如果要啟用你網站的外掛自動更新功能,你需要將以下程式碼加入 wp-config.php 檔案裡:

add_filter( 'auto_update_plugin', '__return_true' );

啟用佈景主題自動更新功能,將以下程式碼加入 wp-config.php 檔案裡:

add_filter( 'auto_update_theme', '__return_true' );

如果你正在使用一個 WordPress 3.7 或更早以前的版本,我建議你從 WordPress.org 下載最新版本,這樣才能支援核心自動更新功能,以確保你不會錯誤任何重要更新。

 

6. 使用簡單的密碼

猜測使用者的帳號、密碼仍是一種入侵網站的方式。在 WordPress 停止強迫使用者使用預設的 “admin” 帳戶名稱後這個情況有改善了一些,但容易被猜中、破解的密碼仍是黑客入侵網站的主要手法。

當涉及到設定密碼,簡單的密碼是不夠的。你需要一個更難以被猜中的密碼。


設定一組複雜的密碼是相當重要的。

有很多的密碼產生器,可以一鍵產生隨機密碼,這些密碼通常強度很高。我最喜歡的是 PasswordsGenerator.net,它能讓你選擇密碼的長度和複雜程度。

你還可以使用其他的密碼解決方案,例如 Passpack 和 LastPass 來將密碼儲存於更安全的地方。

 

7. 未定期備份網站

WordPress 初學者(所有新的網站管理者)沒有意識到為網站定期備份的重要性。這是一個很大的問題,直到網站被黑客攻擊,失去了許多重要的資料後,才會發現他們沒有備份網站。

專業的備份還原服務,例如 VaultPress,每月只需要 5 美元。也有很多免費方案可以使用,例如熱門的 WordPress Backup to Dropbox 外掛。

你還有想到任何 WordPress 初學者可能犯的錯誤嗎?如果有,請在下方留言告訴我們。

  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 Twitter(在新視窗中開啟)
  • 分享到 LinkedIn(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Pocket(在新視窗中開啟)

相關文章

本站聲明:網站內容來源免費資源網路社群https://free.com.tw,如有侵權,請聯繫我們,我們將及時處理

為 WordPress 網站加入討論區的 11 個方法

本文參考資料為 Top 11 Ways To Add A Forum To Your WordPress Website, 原作者 Brenda Barron。

如果你想強化 WordPress 網站與訪客間的互動性,增加讀者停留在網站的時間,除了使用社群網站來拉攏使用者外,建立討論區是個可行的作法。雖然 WordPress 本身就具備迴響功能,但並不適合用來討論一個長篇大論的主題,若有天你的網站到達一定的人氣,討論區就會變得相當重要。

在 WordPress 網站另外建立討論區很難嗎?相信我,比你想像中的還要簡單許多。你不用熟悉程式碼,你需要做的就是尋找、安裝一個特定的外掛(或佈景主題),然後設定選項來符合你的需求。

我不是開玩笑的,它真的很簡單。事實上,本文已經整理了 11 個簡易的方法,能迅速將討論區加入你的網站,有興趣的朋友可以繼續看下去。

bbPress

可能不少人嘗試過這個由 WordPress 官方所推出的討論區程式,bbPress 也是目前最佳的 WordPress 討論區外掛之一。一旦安裝,它會在你的控制台裡加入許多選項來建立及管理討論區。它能夠與你的網站完全地整合,因此不會感覺格格不入,你可以輕鬆在控制台裡管理論壇或回覆主題。

它包括了一些小工具,使得討論區變得更加好用。此外,你的網站訪客也可以選擇是否訂閱論壇、或是特定的文章、回覆。當使用者擁有權限時也可以從論壇前台來刪除主題、置頂、標記垃圾、編輯等等。

你也可以從其他討論區平台來匯入文章,這意味著你可以隨時轉換平台,不必侷限於單一解決方案。

 

BuddyPress

另一個你可能之前有聽過的討論區外掛,名為 BuddyPress。它的功能豐富、強大,並可以很簡單地加入各種社交網路功能至你的 WordPress 網站,而不必使用過多的外掛。這是由 WordPress 官方所開發的,也代表它的程式碼相當乾淨且安全可靠。

透過 BuddyPress 你可以讓訪客建立使用者個人頁面和群組,監控其他人的動態消息,其中也包含了私人訊息功能。如果要為你的公司、小眾議題或一項產品建立獨立的社交網路,它是個很棒的方法。它也是提供你的客戶延伸支援的好方法。

建立自訂個人資料欄位、最佳化你的通知選項及管理帳戶設定相當快速。你可以加入好友,以便與對方進行對話,甚至透過私人訊息功能來和多個討論區用戶對談。感謝群組功能,你可以讓使用者建立自己的微型社群,檢視其他成員的動態更新,透過第三方外掛甚至可以擴展 BuddyPress 的功能。

 

DW Question & Answer

DW Question & Answer 是一個簡單的外掛,讓你可以在 WordPress 網站建立問與答功能。這可以為你的客戶提供有效的線上支援,提供一個常見問題解答,或是讓你的網站讀者詢問、回應答覆。

這個外掛包括了分類和標籤問題、票選答案和迴響功能,且支援驗證碼來降低可能的垃圾留言。它也支援 11 種不同的語言、私人回覆,以及「追蹤」問題和答案、置頂等功能。

 

CM Answers

如果你想為網站加入更強大的問與答功能,CM Answers 是完成這項任務的不二人選。它建立於 Stack Overflow 討論版,使用者可以回覆問題且其他成員也能針對其答案進行留言。社群的成員能夠票選答案來協助改善論壇整體的準確性及有效性。它提供免費和 Premium 付費版本。

免費版簡單易用,而且看起來相當不錯。Premium 付費版內建各種小工具和代碼,讓自訂化更加簡單。它也包含社交網路分享選項、將附件添加到問題和答案、一個完整的文字編輯器、自訂固定鏈結等等。你也可以支付 $29 元升級至 Premium 版本,以獲取更多管理工具及多網站支援功能。

 

WP Symposium

通常被視為一個社交媒體外掛,WP Symposium 也是另一個將討論區新增至你 WordPress 網站的方法。免費版本相當強大,讓你可以使用短代碼來將討論區新增至你的網站。如果你想進行分類,也可以設定多個論壇。

使用者可以加入或退出 Email 通知、設定文章置頂、將主題加入最愛、或是進行票選。這個討論區也有彈出式選單,讓你可以搜尋、檢視近期活動,和檢視你的收藏夾。它也有一些小工具可以顯示討論區最新主題、文章,或是尚未收到任何回覆的討論串。

 

AnsPress

如果你想建立問與答的形式,AnsPress 或許是一個不錯的免費選項。相較於其他我在這裡介紹的問與答類型外掛,它真的很簡單、不複雜,但它仍然可以完成任務,尤其對於不熟悉 WordPress 的朋友。

當安裝完成,這個外掛會新增一個問題及答案選項至你的主要管理控制台。如果你想自訂風格讓它與你的佈景主題結合,它也可以做到。它跟我們在前面已經介紹過的外掛有著類似的功能,包括編輯問題及編輯答案、標記垃圾留言,以及評選你喜愛的解答。

其他功能包括內建的管理功能、問題標籤、分類、標籤建議、reCAPTCHA(驗證碼)、私人訊息、Email 通知及使用者等級等等。它也有一些有趣的功能,例如排名、徽章、個人檔案、積分、封面相片等等。

 

Bublaa Forum and Comments

另一個免費選項是 Bublaa Forum and Comments,它跟我前面介紹過的外掛有些不同。透過 Bublaa Forum, 你可以為你的網站建立一個即時討論區。Bublaa Comments 讓你連結網站的頁面和文章,網站直接使用該論壇系統,支援文字、影片、相片等等。最後,還有一個 Bublaa Activity 功能小工具,讓你可以在網站的任何位置顯示討論區的文章。

其他你想知道的功能,包括內建的 Email 通知、管理、社群網路登入、響應式設計及 SEO 。

 

SabaiDiscuss for WordPress

如果你想尋找一個付費方案,SabaiDiscuss 是個不錯的選擇。它遵循問與答的形式,使用熟悉的 Stack Overflow 樣式。它可以被用於建立一個標準的討論區或服務支援系統。

這裡的一些功能包括從前台發佈問題及解答、標籤建議、分類、檔案附件、為問題和解答評分,以及迴響功能。使用者可以將問題設定為最愛、建立個人資料,也能建立積分制度。

自訂欄位編輯器讓你有足夠的自訂選項,也內建設定權限、訪問限制、訪客提交問題,並有一個 PHP 的 Markdown 編輯器、搜尋、小工具、模版、Email 通知模版和翻譯等等,外掛售價為 $22 美元。

 

Groups Forums

另一個付費方案選擇,你可以考慮 Groups Forums。它相當輕量化,你不用擔心會拖慢網站速度,但仍然提供了大量的功能。實際上它是免費外掛 Groups 的延伸。

主題可以從前台或後台提交。你也可以建立版面管理員和置頂主題,使用者可以訂閱主題,如果想要持續關注某個主題。內建通知功能,可以追蹤新的迴響、等待發佈的主題、已發佈的主題等等。幾個小工具和短代碼也內建在裡頭,這個外掛售價為 $21 美元。

 

Simple:Press

今天要談的最後一個外掛是 Simple:Press,有著將其他外掛功能集於一身的特點。它適用於小型和大型社群,且很易於自訂化以符合你的網站需求和設計。

其他功能還包括積分和徽章、圖片縮圖、簽名檔、個人頭像、搜尋、論壇統計及標準的管理工具。你也可以設置自訂圖示、自訂表情圖案、短代碼和 Email 通知。它也適用於多網站,並允許創立自訂權限、使用者群組、私人版面、私人 RSS feeds、漂亮的固定鏈結,也支援常見的 SEO 外掛、多國語言。

最後,Simple:Press 提供大量的額外功能,如果需要可以手動添加,像是私人訊息、更多的管理工具及功能等等。基本的外掛是免費的,如果你想要更多複雜的功能,可能必須花錢來購買會員資格。一個 Silver 會員兩個月的價格為 $39 美元,Gold 會員每 12 個月是 $99 美元。

 

ForumEngine

如果你想直接以 WordPress 建構一個討論區,可以考慮試試看 ForumEngine 。這是一個 WordPress 佈景主題解決方案,透過論壇的理念來建構出一個網站。正因為如此,它包含的功能可能是前面的外掛所沒有的。

其中的一些功能包括社群網站登入、無限滾動、權限、最愛和追蹤文章以及更多功能。它還配置了各種小工具,你可以將它插入網站以加入更多方便的功能。這個佈景主題也是響應式設計,無論在任何裝置上都能正常顯示。如果你想把 WordPress 直接變成討論區,可以試試看 ForumEngine ,目前售價為 $53 美元。

 

總結

為你的 WordPress 網站新增一個討論區或從頭開始建立一個論壇不應該是複雜的。事實上,它應該是小菜一碟,特別適當你選擇了合適的工具。有大量的工具能協助你架設一個討論區,如同本文的列表,希望這些工具能帶領你完成一些想做的事情。

在你開始創造討論區時,我想聽聽你的聲音。你使用了那些外掛或工具呢?為什麼會選擇它?或者你覺得這份清單裡漏掉了那些好用的外掛或解決方案嗎?我很樂意聽聽你的想法,給我們留言吧。

  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 Twitter(在新視窗中開啟)
  • 分享到 LinkedIn(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Pocket(在新視窗中開啟)

相關文章

本站聲明:網站內容來源免費資源網路社群https://free.com.tw,如有侵權,請聯繫我們,我們將及時處理

【精選推薦文章】

智慧手機時代的來臨,RWD網頁設計已成為網頁設計推薦首選

想知道網站建置、網站改版該如何進行嗎?將由專業工程師為您規劃客製化網頁設計及後台網頁設計

帶您來看台北網站建置台北網頁設計,各種案例分享

廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

Clef 讓你登入 WordPress 網站免輸入帳號密碼,全新兩步驟驗證自動登入超安全!

本文章介紹的 Clef 外掛程式僅適用於以 WordPress 自架網站的使用者,若你是使用 WordPress.com 提供的免費網誌服務則無法安裝。

之前我曾經利用一些篇幅來針對 WordPress 架設的網站安全提供建議,例如 9 個提升 WordPress 網站安全性的方法、或者是安裝 WordPress 後你應該要做的 25 件事,如果你也是使用 WordPress 架站的話,請一定要對這些細節特別用心,因為任何一點微小的疏失,都可能成為未來被有心人士入侵或破壞的漏洞。

若你對於網站安全特別重視,一定不難發現,上面的兩篇文章裡提到許多關於帳號密碼和登入的細節。就 Pseric 的經驗來說,設定一組難以被猜測出來的帳號密碼,搭配上 Google Authenticator 之類的兩步驟驗證外掛,在帳號密碼以外多一道防護其實就能大幅提昇安全性。

最近我又發現一款全新的安全防護工具 Clef,簡單來說,它是帳號密碼、兩步驟驗證以外的另一種選擇,使用者無須輸入難以記憶的密碼組合,也不用等待手機來產生兩步驟驗證隨機代碼,利用手機上的 Clef 應用程式對著登入畫面的條碼一掃,直接驗證身份登入。

Clef 將安全驗證的複雜過程交給使用者最貼身的配備,也就是手機或行動裝置,讓驗證變得更快、更簡單。目前已經支援 iOS、Android 兩大平台。

Clef Two-Factor Authentication 雖然名稱上是兩步驟驗證,但它其實跟我們熟悉產生驗證碼方式有些微不同,Clef 會在畫面產生類似於條碼的波浪狀驗證碼(Wave),利用身份驗證後的 Clef 手機應用程式,以鏡頭對著電腦上的驗證碼一掃,就能夠確認你的身份並完成登入的程序。

外掛名稱:Clef Two-Factor Authentication
外掛鏈結:https://wordpress.org/plugins/wpclef/

使用教學

STEP 1

使用 Clef 完全不需要用到帳號密碼,減少密碼在傳輸過程中被擷取而造成安全問題的可能性。不僅如此,Clef 還能將 WordPress 原有的帳號密碼登入驗證方式停用,以 Clef 取代傳統登入表單(新的登入畫面會如同下圖)。

STEP 2

要安裝這個功能非常簡單。首先,你要有一支 iPhone 或 Android 手機、平板電腦,因為每次登入都會用到,請先在手機或平板電腦上安裝 Clef 應用程式(可以在 Clef 官方網站找到下載鏈結),安裝後先放著,我們要先進行 WordPress 端的設定。

開啟、登入你的 WordPress 網站後,點選左側選單的「外掛」->「安裝外掛」,然後搜尋「Clef」即可找到這個外掛功能,點選右上角的「立刻安裝」把它安裝到網站。

STEP 3

下載、啟用外掛功能後,第一次使用需要進行設定。點選外掛的「Get Started」開始進行初次使用設定。

STEP 4

如果你還沒有下載 Clef App 的話,在開始前也會提示使用者先下載,把 Clef 安裝到自己的手機才能繼續。若已安裝完成,點選「I already have the app」繼續下一步。

接著畫面上會出現 Clef Wave,也就是波浪狀的驗證碼,拿出你的手機或平板電腦,打開剛才下載的 Clef 應用程式,對著螢幕上的驗證碼掃描。完成這步驟後,就能讓你的網站與手機 Clef 進行連結。

STEP 5

接下來會跳轉到一個隨機的 clef.io 鏈結,看到箭頭了嗎?請依照指示,選擇在畫面上出現的網址(在你的手機上進行選擇),這個步驟是 Clef 後來再加入的額外驗證,目的是避免不小心被其他人掃描、登入,多一層驗證的防護措施。

STEP 6

在結束 Clef 外掛設定前,可以選擇是否邀請其他使用者來使用 Clef,可以點選藍色按鈕來發送邀請,或者點選「Continue and finish setup」完成設定。

STEP 7

順帶一提,如果你想用 Clef 驗證方式來取代 WordPress 傳統帳號密碼登入框,可以在外掛設定的「Disable Passwords」將相關功能關閉。若你使用 WordPress App 或離線編輯器,必須要透過 API 驗證身份,也記得把 Allow passwords for API 功能打開才能正常連線。

值得一試的三個理由:

  1. 以全新的驗證波浪(Clef Wave)取代原有的帳號密碼登入
  2. 支援 iOS、Android,掃描即可快速驗證身份
  3. 可設定自動登出時間,或從遠端登出帳號
  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 Twitter(在新視窗中開啟)
  • 分享到 LinkedIn(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Pocket(在新視窗中開啟)

相關文章

本站聲明:網站內容來源免費資源網路社群https://free.com.tw,如有侵權,請聯繫我們,我們將及時處理

【精選推薦文章】

如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

想要讓你的商品在網路上成為最夯、最多人討論的話題?

網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

不管是台北網頁設計公司台中網頁設計公司,全省皆有專員為您服務

想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師"嚨底家"!!

在 WordPress 設定 HTTPS,強制使用 SSL 安全加密協定教學

本文參考資料為 Moving to HTTPS on WordPress, 原作者 Chris Coyier。

如果你有注意,從昨天開始,免費資源網路社群網站鏈結已經更新,改採 HTTPS 也就是俗稱的安全通訊協定(Secure Sockets Layer,簡稱 SSL),在網址列旁邊會顯示一個安全鎖頭小圖示,目的在於提高使用者瀏覽網站的安全性,在伺服器與用戶端傳送內容時,即使封包被擷取,也無法取得傳輸的內容。此外,透過一些公眾 WiFi 連線時,可能會在瀏覽網頁時置入特定的廣告代碼,使用 HTTPS 可避免這些問題發生。

另一方面,Google 去年公告將安全列為搜尋排名演算法的指標,以確保使用者在搜尋結果取得的都是安全鏈結。如果你有在自己網站、部落格連結本站,也別忘記更新一下免費資源網路社群的鏈結,即使舊鏈結都會自動重新導向至新鏈結。

在計畫更新網站鏈結前,我做了不少準備,還好在國外網站 CSS-Tricks 找到一篇完整教學,讓我在進行時減少可能出錯或發生問題的機會。特別利用這篇文章來紀錄如何在 WordPress 設定 HTTPS ,使網站可強制使用 SSL 安全加密協定。

若你本身有在維護 WordPress 網站,也打算讓網站走向 HTTPS 化,可參考本的操作設定步驟,就能用最短、最無痛的方式更新,轉換到新的安全協定。

一、取得 SSL 安全憑證

這是必要且最重要的步驟,就是在你的伺服器或虛擬主機安裝 SSL 安全憑證。購買方式很多,在這裡就不多做贅述。你可以從你的主機提供商獲取相關資訊,或者網路上也有不少販售 SSL 憑證的公司,價格都不一定,可從有折扣、價格較低的管道購得。

免費資源網路社群目前是使用由 CloudFlare 提供的免費 SSL 憑證,搭配主機端的 SSL 來做嚴格完整的 SSL(Full SSL),比較特別的是 CloudFlare 內建許多可選擇的 SSL 選項,即使你的主機端沒有 SSL 憑證,依然可利用它提供的 Flexible SSL 獲得加密傳輸的效果。這部分以前是必須付費的,但現在已經對免費帳戶開放

當 SSL 憑證安裝完成後,你應該就能使用 HTTP 和 HTTPS 兩種協定來瀏覽網站。如果在連線時跳出錯誤或是警告訊息,有可能是憑證沒有正確安裝所致。

二、從控制台開始設定

在 WordPress 部分,建議從控制台的 HTTPS 開始設定(同時也測試一下是否有問題),設定方式很簡單,可以參考 Administration Over SSL 說明。這裡應該要能正常運作,而且不該出現任何錯誤(這裡的錯誤是指當網頁存在「混合內容」,也就是 HTTP 和 HTTPS 共存的情形,會跳出錯誤訊息)。

要讓 WordPress 控制台強制使用 HTTPS,只要在你 WordPress 根目錄的 wp-config.php 設定檔內置入以下程式碼:

define('FORCE_SSL_ADMIN', true);

記得先確保 WordPress 控制台能在 HTTPS 協定下正常運作,開啟 https://yoursite.com/wp-admin/ 測試。如果無法正確開啟,或者出現錯誤,這可能是你的 SSL 沒有正常運作。若持續錯誤,可以先把上面的程式碼移除。

若是正常運作,你會看到安全連線:

三、試著讓前台的單一頁面可以運作

下個步驟是要讓你的前台可以使用 HTTPS。要一次完成設定是非常困難的,我們可以循序漸進,先從一個目標頁面來測試、調整。對我來說,我任意挑選其中一篇文章來測試,或者你也可以選擇在註冊頁面進行,因為這頁面可能會需要更高的安全性。

有個很實用的外掛「WordPress HTTPS (SSL)」可以幫助你。透過這個外掛,你就能在文章或頁面編輯畫面,強制讓它透過 HTTPS 進行連線,這樣就能測試 HTTPS 能否在前台正常運作。

四、處理混合式內容警告

接下來要做的,就是處理下圖這個問題:

這就像是「嘿!使用 HTTPS 很不錯,但你還無法獲得綠色的鎖頭圖示!」。

如果你開啟開發人員工具的 Console,你可能會看到如下圖訊息:

在這裡,因為有些圖片使用 CodePen 內嵌語法,網址列為 http 所致。

但它有可能是任何東西,HTTP <script> s、HTTP CSS <link> s、HTTP <iframe> s。任何的 HTTP 請求在 HTTPS 頁面都可能觸發錯誤。

你必須把這些鏈結全部修復。

五、使用相對 URLs 協議!

你知道,這些鏈結是以 // 開頭,像是:

<img src="//example.com/image.jpg" alt="image">

這些都是你的朋友。它們會依照當前頁面的協定來載入該資源。或者鏈結是相對鏈結也是可以的,像是:

<img src="/images/image.jpg" alt="image">

我最後在自訂欄位的地方找到這些錯誤、必須修正的鏈結(編按:一般使用者不一定會用到自訂欄位功能,不過我們可以繼續看下去):

六、艱難的問題:在舊內容裡更新圖片鏈結

在網站上可能有成千上萬個頁面或文章,這些內容裡又有許多圖片。現在我們遇到的問題是:這些圖片使用 HTTP 鏈結,要如何進行更新?

我沒有使用 WordPress filter 來更新這些鏈結—我就只是想解決這些問題。首先,我們必須在資料庫執行一些 SQL 語法來修復鏈結,主要是把圖片 src 鏈結修改成相對鏈結:

在執行 SQL 語法前,請務必先備份你的資料庫,然後在本機測試一次:

UPDATE wp_posts 
SET post_content = ( Replace (post_content, 'src="http://', 'src="//') )
WHERE Instr(post_content, 'jpeg') > 0 
 OR Instr(post_content, 'jpg') > 0 
 OR Instr(post_content, 'gif') > 0 
 OR Instr(post_content, 'png') > 0;

然後再執行另一個解決單引號鏈結的語法:

UPDATE wp_posts 
SET post_content = ( Replace (post_content, "src='http://", "src='//") )
WHERE Instr(post_content, 'jpeg') > 0 
 OR Instr(post_content, 'jpg') > 0 
 OR Instr(post_content, 'gif') > 0 
 OR Instr(post_content, 'png') > 0;

我們甚至修復了在自訂欄位遇到的鏈結問題(如果你沒用過自訂欄位功能,那麼就無須執行這段程式碼):

UPDATE wp_postmeta 
SET meta_value=(REPLACE (meta_value, 'iframe src="http://','iframe src="//'));

七、確認新的圖片使用相對協定

在把舊的內容改好後,我們也要確保新的內容不會發生問題。這意味著我們必須修改媒體上傳、插入鏈結的網址協定,使它成為相對鏈結。幸運的是我已經插入自訂的 <figure> 標籤,所以這只是一個簡單的調整。把以下的程式碼貼到 functions.php ,我想你就可以達成我們要的功能:

class CTF_Insert_Figure {
/**
 * Initialize the class
 */
 public function __construct() {
 add_filter( 'image_send_to_editor', array( $this, 'insert_figure' ), 10, 9 );
 }
/**
* Insert the figure tag to attched images in posts
*
* @since 1.0.0
* @access public
* @return string return custom output for inserted images in posts
*/
public function insert_figure($html, $id, $caption, $title, $align, $url) {
// remove protocol
$url = str_replace(array('http://','https://'), '//', $url);
$html5 = "<figure id='post-$id' class='align-$align media-$id'>";
$html5 .= "<img src='$url' alt='$title' />";
if ($caption) {
$html5 .= "<figcaption>$caption</figcaption>";
}
$html5 .= "</figure>";
return $html5;
}
}

八、你的 CDN 也需要 SSL

如果你使用 CDN 服務(像是 MaxCDN),這表示 CDN 使用完全不同的伺服器和網址,它也需要透過 SSL 來傳輸文件。幸運的是 MaxCDN 可以做到。

若你還沒開始使用 CDN ,可參考我之前介紹的「Photon 免費 CDN 圖片分流、加速服務,每個 WordPress 用戶都該開啟的外掛」,這個由 Automattic 提供的免費 CDN 服務可以在 SSL 下運作。

九、開始在所有地方使用 HTTPS

在根目錄的 .htaccess 檔案放入以下程式碼:

# Force HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

當你一旦完成後,就可以移除之前安裝的 WordPress HTTPS (SSL) 外掛,並將 wp-config.php 內剛才加入的程式碼移除,對目前來說那些是多餘的。

此外,也別忘了在「設定 > 一般」內更新 WordPress 位址以及網站位址,加入 https://,讓 WordPress 內的所有鏈結都轉換成新的 HTTPS 網址。

十、持續調整,修復問題

在轉換為 HTTPS 後,持續檢查其他頁面是否有混合內容警告訊息。你只需要繼續觀察、調整,把這些問題解決即可。

祝你好運!

  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 Twitter(在新視窗中開啟)
  • 分享到 LinkedIn(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Pocket(在新視窗中開啟)

相關文章

本站聲明:網站內容來源免費資源網路社群https://free.com.tw,如有侵權,請聯繫我們,我們將及時處理

【精選推薦文章】

自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

評比前十大台北網頁設計台北網站設計公司知名案例作品心得分享

台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包"嚨底家"

殺手級 WordPress 體檢項目:101 個建立新網站的超簡易捷徑!

本文參考資料為 Killer WordPress Checklist: 101+ easy steps to launch your next website!,已取得原作者 Nirav Dave 授權。

你正在與 WordPress 專案奮戰嗎?棒極了!在設定一個 WordPress 網站時,有許多我們必須遵照的原則,例如我先前曾經寫過「安裝 WordPress 後你應該做的 25 件事」或是「9 個提升 WordPress 網站安全性的方法」。國外部落客 Nirav Dave 決定要製作一份殺手級 WordPress 檢查清單,裡頭涵蓋從啟動網站前的方向、開發過程,到後續的搜尋引擎最佳化(SEO)、維護和安全性等項目。如果你想營運一個 WordPress 網站,最好可以參考這份清單,來確保這些項目都已經完成。

快速檢視本清單涵蓋的項目:

我們的「殺手級」體檢清單被劃分為七個主要項目,包括啟動新網站、開發,以及後續如何成功維護一個 WordPress 網站。

你需要做的就是仔細按照每一個步驟走,開始吧!沒有時間猶豫了。

  • 一、從這開始
  • 二、WordPress 準備清單
  • 三、WordPress 開發清單
  • 四、WordPress 上線清單
  • 五、WordPress SEO 清單
  • 六、WordPress 安全清單
  • 七、WordPress 維護清單
  • 八、值得一讀的文章(Bonus—收錄在文章最後 PDF 文件裡,英文)
  • 九、便利工具(Bonus—收錄在文章最後 PDF 文件裡,英文)

一、從這開始

我們都知道正確開始的重要性。

如果你從一開始,就能正確了解基礎知識,那麼接下來就能進行得很順利。因此,請確保你有系統地按照以下的步驟前進,以獲得最佳效果。

1-1. 選擇虛擬主機
根據你的需求來選擇一個合適的虛擬主機。一些熱門的選項包括 Bigrock | Bluehost | HostGator。

1-2. 下載 WordPress 最新版本:
從 WordPress.org 官方網站來下載 WordPress 正體中文版。

1-3. 使用 FTP 工具:
最好的 FTP 客戶端軟體,下載 FileZilla。

1-4. 線上或本機?
選擇一個合適的開發環境,然後安裝 WordPress。你有兩個選擇:使用 XAMPP 安裝於本機電腦,或是把網站託管在一個虛擬主機。

 

二、WordPress 準備清單

那麼你準備好要開始了嗎?

這可能是突然出現在你腦海中的第一個問題。這份檢查列表回答了這個問題。無論你是初學者,或是 WordPress 專家,這份特殊的列表將有利於開展一個新的 WordPress 網站。

2-1. 選擇正確的目錄:
選擇一個目錄,或安裝在 public_html。不要使用「root」或「WordPress」等名稱。

2-2. 變更資料表名稱:
使用隨機產生的字元/數字組合來命名,取代預設的 wp_ 資料表名稱。有需要可以試試看 Change DB Prefix 外掛。

2-3. 使用獨特的登入帳號/密碼:
避免使用 admin/admin 來做為管理員的帳號/密碼。或者,你可以參考以下範例:

  • 使用者名稱— CMW(舉例)
  • 密碼—(使用 Strong Password Generator 外掛產生)。
  • 你也可以使用你的 Email 做為登入名稱,需要安裝 WP Email Login 外掛。

2-4. 從搜尋引擎隱藏你的測試網站: 
請確認已在「設定 -> 閱讀」內勾選「阻擋搜尋引擎索引這個網站」,以確保能將你的網站從搜尋引擎隱藏。

2-5. 額外步驟:
當你安裝完成,這裡有一些額外項目必須做。

  • 使用免費的 SeedProd Coming Soon 外掛或 WP Maintenance Mode 外掛來建立一個「Coming Soon(即將開站)」畫面。
  • 現在,你必須在「設定 -> 一般」裡進行一些變更。選擇 WordPress 網站位址是否要包含 www 或者不要。
    // 把 non-www 網址重新導向 www,將以下代碼加入 .htaccess。
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^www\.
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
    // 把 www 網址重新導向 non-www,將以下代碼加入 .htaccess。
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
    RewriteRule ^(.*) http://%1/$1 [R=301,NE,L]

2-6. 設定預設日期、時間:
別忘記更新時區、時期格式,在「設定 > 一般」。

2-7. 更新網站標題:
很重要的是記得在「設定 > 一般」底下更新網誌標題和描述。

2-8. 變更媒體設定:
在「設定 > 媒體」底下,取消勾選「將我所上傳的檔案安排為以『月』及『年』為基準的目錄」 選項。

2-9. 變更網誌分類:
同樣的,在「文章 >分類」底下,重新命名「未分類」 ,並為文章設定一個預設分類。

2-10. 以密碼保護測試網站:
為你的測試網站增加安全性,可以安裝 Password Protected 外掛。

2-11. 刪除範例設定檔:
最後,別忘記把範例設定檔移除,wp-config-sample.php 在你的根目錄底下。

2-12. 額外步驟:

  • 開啟除錯模式(Debug Mode)
    define(‘WP_DEBUG’, true);
  • 盡可能使用 WordPress 預先載入的第三方 JS 庫。
  • 做為管理員,你應該能夠上傳/刪除媒體檔案,依照你的需求安裝新外掛。

三、WordPress 開發清單

現在來到最重要的確認項目。

有為數眾多的設定和變更選項必須在建立網站後進行,用以讓一個網站符合你的需求。這就是為什麼,我們把 WordPress 上線清單列為最重要的步驟,即便是非常微小的部分,也千萬不要錯過。

3-1. 移除預設內容:
在這裡,第一件要做的工作是把 WordPress 預設內容移除,像是文章、迴響等等。

3-2. 建立一個網站地圖(Sitemap):
下一步,以記事本、Word 或 Excel 建立一個網站地圖邏輯,並根據此地圖加入頁面,像是關於我們、聯繫我們等等。

3-3. 在網址使用連接號(-):
確認你在網址使用「-」而不是下底線「_」。

3-4. 加入網誌分類:
在「文章 > 分類」底下,新增適當的網誌分類。

3-5. 加入標籤、媒體:
在你加入網誌分類後,你就可以加入適當的文章、標籤和媒體檔案。

3-6. 更新選單:
然後,根據前面設計的網站地圖來加入選單,選單功能在「外觀 > 選單」。

3-7. 使用 ALT 標籤:
別忘記為所有網站圖片加入 alt 標籤。你也可以使用 Search Friendly Images 外掛。

3-8. 加入電子報訂閱:
為電子報訂閱加入 Email 表單功能。你也可以使用 Newsletter 外掛。我們使用 Jetpack 內建的訂閱模組。

3-9. 建立一份外掛列表:
幫你想要安裝的外掛建立一份列表。一些建議的外掛如下:

  • SeedProd Coming Soon:
    https://wordpress.org/plugins/coming-soon/
  • WordPress SEO by Yoast:
    https://wordpress.org/plugins/wordpress-seo/
  • Google Analytics by Yoast:
    https://yoast.com/wordpress/plugins/google-analytics/
  • BackUpWordPress:
    http://wordpress.org/plugins/backupwordpress/
  • WordPress Backup to Dropbox:
    https://wordpress.org/plugins/wordpress-backup-to-dropbox/
  • Broken Link Checker:
    http://wordpress.org/extend/plugins/broken-link-checker/
  • Redirection:
    https://wordpress.org/plugins/redirection/
  • WP-reCAPTCHA:
    https://wordpress.org/plugins/wp-recaptcha/
  • Contact Form 7:
    https://wordpress.org/plugins/contact-form-7/
  • Contact Form 7 reCAPTCHA Extension:
    https://wordpress.org/plugins/contact-form-7-recaptcha-extension/
  • BBQ: Block Bad Queries:
    https://wordpress.org/plugins/block-bad-queries/
  • WP-Optimize:
    https://wordpress.org/plugins/wp-optimize/
  • WP-PageNavi:
    https://wordpress.org/plugins/wp-pagenavi/
  • WP Super Cache:
    https://wordpress.org/plugins/wp-super-cache/
  • iThemes Security:
    https://wordpress.org/plugins/better-wp-security/
  • Revision Control:
    http://wordpress.org/extend/plugins/revision-control/
  • Error Log Monitor:
    https://wordpress.org/plugins/error-log-monitor/

3-10. 加入社交網站圖示:
加入社群網站的圖示或鏈結,像是 Facebook、Twitter、Google+、Pinterest、LinkedIn 等等。你也可以使用 AddThis、ShareThis 或 Share Bar 外掛。

3-11. 加入社交網站 Feeds:

  • Facebook Page Plugin
  • Twitter Plugin
  • Google Plus

3-12. 建立社交網站頁面:

  • Facebook 粉絲專頁
  • Twitter
  • Google Plus
  • Pinterest

3-13. 為置頂文章加入特殊樣式:
讓置頂文章跟一般文章的樣式不同,以確保它們能發揮應有的效果。更多資訊可以參考 RoadtoBlogging.com。

3-14. 檢查內容是否破壞版面:
確保文章內的圖片不會破壞內容欄位,或太大擠壓到內容畫面。在這種情況下,使用 Overflow: Hidden 可以解決問題。

3-15. 高亮作者迴響:
確保作者迴響以不同樣式顯示。 可以參考 WPBeginner 寫的這篇文章:Highlight Author’s Comments。

3-16. 使用大頭貼(Gravatars):
檢查使用者頭像或 Gravatars 可以正確顯示。TodayMade.com 在這裡有完整說明。

3-17. 加入迴響已關閉訊息:
迴響表單能夠正確被「迴響關閉」之類的訊息取代。

3-18. 建立 404 頁面:
另一件重要的事情是確保 404 頁面已經建立而且自訂完成。到 1stwebdesigner.com 查看如何在 WordPress 裡建立一個自訂的 404 頁面。

3-19. 測試搜尋頁面:
請檢查搜尋頁面是否能被使用者存取。直接開啟 http://yoursite.com/?s=Test 來檢查。

3-20. 使用、測試分頁鏈結:
測試文章分頁 WP-PageNavi 外掛是否運作正常。

3-21. 加入網站圖示(Favicon):
使用 Custom Favicon 外掛加入自訂網站圖示。

3-22. 使用麵包屑(Breadcrumb):
別忘記使用麵包屑來提供更簡易的導覽。這是 WordPress SEO by Yoast 外掛的一部份。

3-23. 連結 Logo:
在首頁連結公司的 Logo 圖示。

3-24. 移除 Lorem Ipsum(測試文字):
最後,確認你已經移除網站內的所有測試文字。

 

四、WordPress 上線清單

恭喜!你終於把棘手的開發流程完成了!

現在,你必須做好準備才能順利讓你的網站上線,而不會出現任何問題。你要知道,在實際讓網站上線前,會有許多的步驟必須遵循,我們已經把所有你需要的細節都放在同一個地方,讓你更容易進行。

只要按照這些步驟走,就能讓網站輕鬆上線!

4-1. 採取備份:
當你將你的網站上線,最重要的是定期備份。你可以使用外掛來建立備份:BackUpWordPress(免費)| BackupBuddy(付費)| WordPress Back to Dropbox(免費)。

4-2. 檢查內容結構:
檢查結構與內容,是否包含了頁面、分類、網址、送出表單等等。

4-3. 更新管理員 Email:
在「設定 > 一般」底下,更新管理員的電子郵件地址,同時也檢查社交網站、聯繫資訊內的管理員 Email 是否正確。

4-4. 安全性:
請確保所有資料皆處於安全位置,像是密碼強度、檔案和資料夾權限等等。使用 iThemes Security 外掛。

4-5. 確認跨瀏覽器相容性:
檢查你的網站是否能在不同瀏覽器通過相容性測試。免費試用 Cross Browser Testing。

4-6. 允許網站被搜尋引擎抓取:
在「設定 > 閱讀」下取消選取「阻擋搜尋引擎索引這個網站」選項,讓網站可以被搜尋引擎爬蟲抓取。

4-7. 停用「即將開站(Coming Soon)」頁面:
啟用外掛 SeedProd 然後停用即將開站頁面。

4-8. 測試響應式設計:
確保你的網站能在行動裝置瀏覽。執行 Google’s Mobile Friendly Test。

4-9. 檢查載入速度:
你也必須改進頁面載入速度,從 Google’s Page Speed Insights 獲得更多說明。

4-10. 壓縮圖片:
使用 TinyPNG 或 WP Smush 外掛來壓縮 PNG 和 JPG 檔案,讓圖片尺寸減少 50%。

4-11. 使用最新的 WP 版本:
確認你已經使用最新版本的 WordPress。如果不是,在網站上線前先升級吧。

4-12. 升級外掛:
在網站上線前把使用的所有外掛更新到最新版本也是相當重要的。

4-13. 在新分頁開啟鏈結:
檢查你的所有外部鏈結是否都會在新分頁開啟。使用類似下面的原始碼。

<a href="#" target="_blank"></a>

4-14. 檢查破損鏈結:
記得檢查網站是否有無法連結的超鏈結,也可以使用 Broken Link Checker 外掛來檢查。

4-15. White Label(白標籤,選用):
如果你為客戶開發一個 WordPress 網站,可以使用 White Label CMS 之類的外掛來改造 WordPress 登入頁面。

4-16. 上線:
當所有步驟都完成後,你可以準備讓網站上線了!

 

五、WordPress SEO 清單

你或許已擁有一個 WordPress 網站,但如果沒有適當的進行搜尋引擎最佳化(SEO),那麼它可能就不那麼完美了。

藉由我們提供的全面性搜尋引擎最佳化確認項目,你就不用再去其他地方學習 SEO。

仔細照著每個步驟走,你就能得到一個搜尋引擎最佳化的網站。

5-1. 管理 301 重新轉向:
使用 Redirection 外掛來協助你管理網站的 301 重新導向。

5-2. 允許網站被搜尋引擎抓取:
在「設定 > 閱讀」裡將網站能見度開啟,如果你之前還沒這麼做。

5-3. 使用 H1 標籤:
確認你在每個頁面只有使用一個 H1 標籤。

5-4. 使用 H2 標籤:
也確認在你的內容標題使用 H2 標籤。

5-5. 將 Alt 加入圖片:
別忘記在網站所有圖片加入 Alt 標籤。你也可以使用 Search Friendly Images 外掛。

5-6. 測試 XML Sitemap 網站地圖:
檢查 WordPress SEO Plugin 內建的網站地圖功能有沒有正常作用,或者安裝 Google XML Sitemap 外掛。

5-7. 檢查 Robots.txt:
下一步,很重要的是確認 Robots.txt 已經存在而且最佳化。更多資訊可參考 ElegantThemes.com。

5-8. 壓縮圖片:
使用 WPSmush.it 外掛來調整圖片大小。

5-9.  www 或 non-www:
將「www」重新導向至「non-www」網址,或者相反,只要選擇其中一種格式。

5-10. 註冊網站管理員工具:
如果你已經發現任何網站的問題,註冊 Google 網站管理員工具並修復這些問題。請確保你已經提交「www」和「non-www」版本。

5-11. 測試麵包屑:
確保麵包屑鏈結可以正常運作。

5-12. 限制 Meta 標籤 Title 部分:
另一件事是確保 Meta Title 只有 55 個字元長度,包括空格。WordPress SEO 有內建這項功能。

5-13. 限制 Meta 標籤 Desc 部分:
一樣地,Meta Description 只能包含 155 個字元長度,包括空格。

5-14. 使用 LSI 關鍵字:
LSI 關鍵字(Latent Semantic Indexing, 隱含語意索引) 對於 SEO 非常重要。確認你已經置入足夠的數量在內容裡。使用 Google Keyword Planner 、UberSuggest.org 或 Google 搜尋來找尋 LSI (提示:在完成搜尋後於頁面底部尋找關鍵字)。

5-15. 檢查雙重內容:
非常重要的是確保你的內容原創,而且網站內沒有多重內容。使用 CopyScape。

5-16. 互連內容:
互相連結也是 SEO 裡相當重要的一個環節。因此,確保你有網站的內部連結。

5-17. 連結至外部鏈結:
擁有外部鏈結並連到其他網站資源也是很重要的。

5-18. 最佳化網站:
再一次提醒,使用 GTMetrix 和 Pingdom 等工具來最佳化你的 WordPress 網站。因為它能幫你節省一些時間,用來清除錯誤。

5-19. 改善頁面載入速度:
使用 Google’s PageSpeed Insights 來幫忙你改善頁面載入速度。

5-20. 確認響應式設計:
使用 Google’s Mobile Friendly 來測試你的網站能在行動裝置上正常瀏覽。

5-21. 使用 Schema 產生器:
利用 Schema Creator 外掛來為網站內容加入結構化資料。

5-22. 建立短網址:
為頁面選擇一個更短的鏈結,例如:http://www.sitename.com/killer-wordpress-checklist/。

5-23. 提交 Local Listing:
如果你的網站是關於在地商家,請確認已經它提交到 Google 我的商家。

5-24. 重新檢視分析:
別忘記加入 Google 分析,然後重新檢視取得的資訊。

5-25. 檢查頁面內容:
檢查所有 OnPage SEO 相關內容,在網站上線之前。有一篇必讀的文章,是來自 Backlinko.com 的 Brian Dean「On-Page SEO Guide」。

5-26. 校對內容:
在內容上線前,確保你的網站整體內容的拼寫、語法是否正確。

5-27. 使用 CDN:
明智的作法是使用 CDN 網路,像是 MaxCDN 以確保更好的速度和可用性。(編按:如果不想付費,可以考慮使用 WordPress 提供的免費 CDN 服務「Photon」)

5-28. 從流量分析排除 IP:
在 Google 分析裡將家裡和辦公室的 IP 位址排除。 更多關於排除內部流量的方法可以參考 Google 分析說明。

5-29. 加入社群分享圖示:
別忘了在 WordPress 網站的所有頁面加入社群媒體圖示。你也可以使用 AddThis 、ShareThis 或 Share Bar 外掛。

 

六、WordPress 安全清單

現在讓我告訴你,安全性是網站開發非常重要的一個層面。

因此,在決定將 WordPress 網站公諸於世前,確保你已經過嚴格的安全檢查是當務之急。透過這個清單,你會學到保護網站免於惡意威脅的外掛和附加設定。

6-1. 防止目錄存取:
防止進入所有目錄,把以下程式碼加入 .htaccess 檔案裡。

# 防止目錄瀏覽
Options All -Indexes

6-2. 監測網站效能:
利用 P3 – Plugin Performance Profiler 外掛來取得你的網站效能報告。

6-3. 刪除安裝和升級檔案:
刪除 /wp-admin/install.php 和 /wp-admin/upgrade.php 在每次 WordPress 安裝或升級後。

6-4. 限制可疑的登入嘗試:
透過 Limit Login Attempts 或 Login Lockdown 外掛來限制登入嘗試次數,把有問題的登入拒於門外。(編按:Jetpack 內建的「保護」功能可以善加運用)

6-5. 使用 iThemes Security:
我們強烈建議你使用最全面的安全外掛—iThemes Security,因為它是免費的,而且能發現已知的所有安全問題。

6-6. 保護你的 wp-config.php 檔案:
正如 wp-config.php 檔案包含了你的網站所有保密細節,不惜一切保護它是非常重要的。一個簡單的方法來保護這個檔案,只要把下面程式碼加入伺服器的 .htaccess 檔案。

<files wp-config.php>
order allow,deny
deny from all
</files>

6-7. 停用佈景主題和外掛編輯器:
如果你想從控制台內停用編輯器鏈結,你可以把以下程式碼加入 wp-config.php,其他人就無法在控制台內直接編輯佈景主題 。

define( 'DISALLOW_FILE_EDIT', true);

6-8. 隱藏你的 WordPress 版本:
把你當前使用的 WordPress 版本隱藏起來是非常重要的。將以下程式碼加入你的 functions.php  檔案裡。

function remove_version() {
 return '';
}
add_filter('the_generator', 'remove_version');

6-9. 隱藏登入錯誤訊息:
登入錯誤訊息可能會暴露你的網站,使駭客得到更多關於帳號密碼正確、錯誤的資訊,反之亦然。隱藏登入錯誤訊息是明智的選擇,只要把以下程式碼加入 functions.php 。

function wrong_login() {
 return 'Wrong username or password.';
}
add_filter('login_errors', 'wrong_login');

 

七、WordPress 維護清單

到這裡,你已經完成了大部分對於 WordPress 網站的檢查。現在,你必須知道如何有效的維護它。此維護清單將讓你的網站在運作時更順利,記得定期進行檢查,以確保它的功能沒有任何問題。

7-1. 清理垃圾迴響:
使用 Delete Pending Comments 外掛來解決數以千計的垃圾迴響。(編按:一般情況下其實使用 Akismet 外掛就綽綽有餘)。

7-2. 測試表單:
測試你的聯繫表單,使用它傳送一次資料看看有無問題。

7-3. 檢查壞掉的鏈結:
使用 Chrome 瀏覽器的 CheckMyLink 擴充功能和 Broken Link Checker 外掛來檢查你的網站是否有損壞的鏈結。

7-4. 控制文章版本:
使用 Revision Control 外掛來取得你的文章版本系統完整控制權。

7-5. 回覆迴響:
確保你已經檢查了你的迴響,回答了讀者的問題。

7-6. 更新外掛:
把外掛升級、更新到最新版本。

7-7. 採取定期備份:
別忘記使用外掛來備份最新資料庫和檔案,包括 BackUpWordPress(免費)| BackupBuddy(付費)| WordPress Backup to Dropbox(免費)。

7-8. 檢查 Google 分析:
定期檢查 Google 分析紀錄有無任何變化。

7-9. 檢查網站管理員工具:
同樣地,定期檢查 Google 網站管理員工具。

7-10. 檢查系統資源使用情形:
使用 P3 – Plugin Performance Profiler 外掛來監控你的資源使用情形。

7-11. 監控統計:
使用 WP Statistics 外掛來監控你的 WordPress 網站統計。

7-12. 進行安全檢測:
WP Security Scan 是一個很好用的外掛,可以掃描你的 WordPress 安裝並給予一些安全上的建議。這個外掛也會檢查以下部分:

  • 密碼
  • 檔案權限
  • 資料庫安全性
  • WordPress 控制台保護

7-13 其他:
如果你已經完成以下所有項目,但還希望可以為網站增加額外的附加功能,那麼請按照下面的步驟,將程式碼加入 wp-config.php:

– 停用除錯模式:

define('WP_DEBUG', false);

– 停用 WordPress 更新:

// 完整停用自動更新
define( 'AUTOMATIC_UPDATER_DISABLED', true );
// 停用所有核心更新
define( 'WP_AUTO_UPDATE_CORE', true );

– 控制文章版本:

// 限制儲存的文章版本。限制為 10 個。
define('WP_POST_REVISIONS', 3);
// 完整停用文章版本功能。
define('WP_POST_REVISIONS', false);

– 清空垃圾:

// 每七天自動清除。
define('EMPTY_TRASH_DAYS', 7);
// 完整停用垃圾桶功能。
define('EMPTY_TRASH_DAYS', 0);

– 增加記憶體限制:

// 將記憶體限制設定為 64 MB。
define('WP_MEMORY_LIMIT', '64M');
// 將記憶體限制設定為 96 MB。
define('WP_MEMORY_LIMIT', '96M');
// 將記憶體限制設定為 128 MB。
define('WP_MEMORY_LIMIT', '128M');

– 設定自動存檔時間間隔:

define('AUTOSAVE_INTERVAL', 300 );

 

Bonus:下載免費 WordPress 檢查清單 PDF 檔(英文),這份文件會教你如何利用本文列出的七個最重要的 WordPress 體檢項目。包括兩個 Bonus 章節:1. 值得一讀的文章、2. 便利工具。

這份清單很長,沒錯吧?

但這正是我們希望帶給你的,一份詳盡的 WordPress 檢核列表,無論你是 WordPress 開發者、設計師和使用者,它都能派上用場。

你可以下載這份清單的部分內容,取決於你的需求,將它用於你的 WordPress 網站。

我們在這份檢查列表裡分享了所有關於 WordPress 的知識。現在,輪到你告訴我們:

  • 這份清單的那部分對你來說最實用?
  • 你認為我們還可以增加或補充那些內容?

如果你有任何可以加入這份清單的部分,歡迎提供你的建議!只要在迴響部分留下你的想法,我們就會收錄你的意見並擴充這份體檢清單。

  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 Twitter(在新視窗中開啟)
  • 分享到 LinkedIn(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Pocket(在新視窗中開啟)

相關文章

本站聲明:網站內容來源免費資源網路社群https://free.com.tw,如有侵權,請聯繫我們,我們將及時處理

【精選推薦文章】

智慧手機時代的來臨,RWD網頁設計已成為網頁設計推薦首選

想知道網站建置、網站改版該如何進行嗎?將由專業工程師為您規劃客製化網頁設計及後台網頁設計

帶您來看台北網站建置台北網頁設計,各種案例分享

廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

TinyPNG 也有 WordPress 圖片壓縮外掛,上傳後自動最佳化(Compress JPEG & PNG images)

本文章介紹的 Compress JPEG & PNG images 外掛程式僅適用於 WordPress 自架網站的使用者,若你是使用 WordPress.com 免費網誌服務則無法安裝。

TinyPNG 是我個人相當喜愛的圖片壓縮工具,後來推出 TinyJPG 後,使它原先支援的格式除了 PNG 外又多了一項 JPG,對於大部分使用者來說已經相當夠用,可惜先前它並沒有針對 WordPress 推出外掛功能,要壓縮圖片都必須手動上傳,然後再把壓縮好的圖片下載插入文章裡,雖然這麼做不會花太多時間,但如果能夠跟 WordPress 整合那就更方便了!

一直以來,WordPress 都沒有很好用的圖片壓縮外掛,也就只能勉強使用 WP Smush 這款很老牌的外掛工具,但它的壓縮效果、速度並不是很理想。

今年二月 TinyPNG 終於推出了官方版的 WordPress 外掛,現在使用者可以免費下載、將 TinyPNG 安裝到自己的網站,利用它自動壓縮、最佳化上傳的圖片特性,大幅減少圖片佔用的空間,同時也能提升網站圖片載入速度,尤其在 Google 將網站開啟速度列為搜尋排名的參考因素後,壓縮圖片對於搜尋引擎最佳化(SEO)來說有正面的影響。

這款名為 Compress JPEG & PNG images 的圖片壓縮外掛來自 TinyPNG,利用 API 串連的功能,讓你的 WordPress 媒體庫可以直接使用 TinyPNG 技術來壓縮圖片,免費方案每個月可以免費壓縮 500 張圖片,超過才會開始計價收費,對一般網站來說,每月 500 張的配額其實已經相當夠用。

外掛名稱:Compress JPEG & PNG images
外掛鏈結:https://wordpress.org/plugins/tiny-compress-images/

使用教學

STEP 1

開啟你的 WordPress 控制台,點選左側選單的「外掛」->「安裝外掛」,在右上角的搜尋框輸入「tinypng」,可以找到本文介紹的「Compress JPEG & PNG images」外掛,點選右上角的「立刻安裝」就能從 WordPress 官方資料庫下載、安裝這個外掛功能。

STEP 2

安裝後,點選「啟用外掛」來開啟這項功能。

STEP 3

接著從「設定」裡找到「媒體」功能,將頁面往下拉,會有一個 TinyPNG API Key 欄位需要設定,第一次使用請先點選下方的 TinyPNG Developer section 來申請 API 金鑰。

此外,預設情況下,TinyPNG 會針對原圖、縮圖、中型尺寸、大型尺寸等圖片格式進行最佳化處理,若你沒有用到其他格式的圖片,建議可以只勾選「Original」原始尺寸即可。

STEP 4

開啟 TinyPNG Developer API 頁面,在上方藍色欄位填入你的姓名、Email,點選右邊的 Get your API key 按鈕後,就能立即收到一封 TinyPNG 郵件,點選信中的鏈結開啟,即可找到你的 API 金鑰。

回到上一個畫面,把 API key 貼上,儲存後就能啟用 WordPress 外掛內的圖片壓縮功能。

STEP 5

在安裝完 Compress JPEG & PNG images 後,每次上傳圖片至媒體庫時,就會透過 TinyPNG 全自動進行壓縮,你再也不用手動開啟 TinyPNG 網站然後上傳、壓縮圖片。

如果你網站之前已經有許多圖片,可以透過「工具」->「Compress All Images」功能來批次自動壓縮、最佳化網站內的所有圖片,不過要注意如果超過五百張圖片,必須回 TinyPNG 網站輸入你的信用卡資料,才能夠繼續壓縮,因為每月的免費額度為 500 張。

STEP 6

點選 Compress All Images 後,就會對網站媒體庫內的圖片進行自動壓縮、上傳,不過記得要把網站分頁開著,若是跳出頁面,壓縮工具就會暫停。

若你有大量需求,TinyPNG 在超過 500 張圖片後才會開始計費,每張圖片 $0.009 美元,若單月超過一萬張圖片,價格會壓低至 $0.002 美元,若拿來交換速度、頻寬跟 CDN 開銷那其實是很划算的投資,如有需要的話不妨參考一下。

值得一試的三個理由:

  1. 利用 TinyPNG 技術壓縮、最佳化網站圖片
  2. 搭配 WordPress 外掛可以自動對圖片進行壓縮處理
  3. 內建批次壓縮工具,可一鍵處理媒體庫內的所有圖片
  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 Twitter(在新視窗中開啟)
  • 分享到 LinkedIn(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Pocket(在新視窗中開啟)

相關文章

本站聲明:網站內容來源免費資源網路社群https://free.com.tw,如有侵權,請聯繫我們,我們將及時處理

【精選推薦文章】

如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

想要讓你的商品在網路上成為最夯、最多人討論的話題?

網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

不管是台北網頁設計公司台中網頁設計公司,全省皆有專員為您服務

想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師"嚨底家"!!

WordPress Hosting 架站空間精選,最多人推薦的五個國外虛擬主機方案

近年來因為使用 WordPress 架站的需求大增,一些虛擬主機也紛紛推出為 WordPress 特別設計的架站空間,通常被稱為 WordPress Hosting強調以 WordPress 架站為主要考量,經過調校、最佳化且適合架設 WordPress 的主機環境,對於網站或部落格來說有更好的效能。當然,這也很可能只是虛擬主機商的噱頭,無論如何,我想就我個人接觸過的 WordPress Hosting 來做個簡單的彙整介紹,也提供給免費資源網路社群的讀者做為參考。

我之前在「無名搬家到自架 WordPress,我推薦的五個虛擬主機服務」一文介紹過了自行架站的好處,如果你覺得自架網站太麻煩、太花錢,後續維護需要花太多時間,最基本的是註冊一個網域名稱,這對於要長久耕耘網路內容的站長來說是個最棒的投資,至少未來當 BSP 平台發生變化,我們可以帶著這塊「招牌」另起爐灶,就不會造成太多問題。

本文要介紹、推薦一些專注於 WordPress 的虛擬主機空間,這些空間你可能都聽過,但或許不知道它有個專為 WordPress 提供的方案規格,價格可能比一般虛擬主機稍微高些,有些則會限制每個月的瀏覽次數,這些都是 WordPress Hosting 的特色,當然,如果你確定要使用 WordPress 來架站,這些空間相較於一般的虛擬主機來說會更加合適

什麼是 WordPress Hosting?

說到 WordPress Hosting,也就是特別為 WordPress 設計的架站空間,最大的特色是針對該平台所打造的最佳化環境,如果有用 WordPress 架過網站的經驗,一定知道它雖然外表看起來樸實簡單,實際上要把網站調整到最佳狀態,是需要花非常多時間、下苦心研究,甚至投入更多成本才能達成。

但一般虛擬主機最大的問題是:使用者並沒有設定主機核心參數的權限。這使得要調整網站變得更為麻煩,且受限在既有的權限裡,倘若有個專為 WordPress 使用而調整、最佳化後的環境,就可以大幅省去這些問題,至少我們可以確保網站在這個主機上的運作是更快速、更有效率的,且在主機上大部分都是運作 WordPress,也會使環境更單純、更安全。

而這個空間,就是本文要介紹的 WordPress Hosting。

WordPress Hosting 有好多種,那一種適合你?

WordPress 架站空間的選擇很多,但大致可以分成兩大類型。

一種是本文要介紹的空間型態,類似於虛擬主機,但使用者必須自己架設 WordPress,且擁有 FTP 權限,也是比較適合入門、新手或普通網站站長使用。因為主機核心參數已經進行過調整、最佳化,更符合 WordPress 的需求,也就能提高 WordPress 網站效能,在架站後應該就能明顯感覺到跟一般虛擬主機的差異。

另一種則是專業型 WordPress Hosting,像是知名的 WP Engine,主要是提供一個「客製化」的 WordPress 環境,透過他們的技術重新改寫 WordPress ,使它的運作效能提升,降低負載等等。這類方案的價格普遍都高很多(主要是有人完整協助你管理 WordPress 核心部分),如果對於一般的網站,其實不太需要用到這樣的規格。

WordPress Hosting 可以升級嗎?

這個問題依照不同虛擬主機商的方案而定。有些 WordPress Hosting 會提供不同的規格來劃分價格,有些則是只有單一規格,在租用前可以先評估一下自己的需要,盡量在最節省成本的考量下取得最實惠的價格方案,就能把資金做最有效的運用。

如前面所述,WordPress Hosting 大多會限制流量或者每月瀏覽次數,這是為了讓一個主機內的資源能做最好的分配,以免因為其他人的網站流量過大而影響到使用品質,當然我們不能確定主機商是否有超賣(Overselling)的情形,但 WordPress Hosting 就跟虛擬主機一樣都有提供試用、不滿意退款保證,你可以先訂購、實際操作後,再評估看看是不是符合自己需求。

租用 WordPress Hosting 需要注意什麼?

跟一般虛擬主機一樣,WordPress Hosting 只不過是針對 WordPress 進行最佳化的環境,一般情況下價格可能會略高於虛擬主機一些(但價差不會很大),購買時可以注意看看不同方案、規格間的差異,例如可用容量、流量和瀏覽次數限制。

選擇一個最適合自己的方案來做購買即可,有些虛擬主機商提供多種 WordPress Hosting 規格定價,也可以在不敷使用時快速升級到另外一個方案。

此外,租用時大多會需要用到信用卡或 Paypal 付款,如果你的 Paypal 沒有餘額,那就必須綁定信用卡,直接從信用卡來線上支付費用。不過並不是每個虛擬主機商都支援 Paypal 線上支付,有些時候會需要使用信用卡付費。

不過 Pseric 還是建議使用 Paypal 付款,透過中間的支付平台為你的消費紀錄把關,當發生糾紛時還能夠提出申訴或請求退款(而且不會洩漏信用卡資料給第三方公司)。

先付費試用,不滿意退款

在租用虛擬主機(或 WordPress Hosting)前,我通常會先了解該公司的計價策略,以及是否提供不滿意退款保證(Money Back Guarantee),大部分的公司都有提供「付費試用,不滿意全額退款」,甚至在你超過試用期間後,退租時仍可以拿回部分的費用(但這取決於每家公司的規定),大部分的差別在於試用期間多寡,短至七天、長的甚至可達 90 天。

推薦使用的 WordPress Hosting

在介紹完基本的 WordPress 虛擬主機後,接下來就可以開始挑選適合你的 WordPress Hosting 啦!以下介紹的五個 WordPress 空間都是 Pseric 實際使用過,也認為能夠勝任大部分使用者需求的選擇,我會稍微就它們提供的規格做簡單的介紹,大家可以比較看看,那一個方案或空間最適合自己的需要。

就租用 WordPress Hosting 來說,會比租用虛擬主機來得更為單純一些,只需要選擇符合自己的流量規格,然後比較一下價格上的差異,就可以下手啦!

SiteGround

很多人可能沒聽過這家公司,事實上,SiteGround 開始於 2004 年,總部在巴拿馬,至今已經託管全世界超過二十五萬個網站。它們提供包括虛擬主機、雲端主機、獨立主機和經銷主機,而旗下的 WordPress Hosting 是許多網站的首要推薦項目。

SiteGround 的 WordPress Hosting 方案分為三種規格:StartUp、GrowBig 和 GoGeek,差異在於每月訪客數、空間大小和可託管的網站數量,起始方案價格在每月 $3.95 美元,摺合台幣只要一百多元左右,其實價格算是非常實惠的。比較特別的是 GrowBig 以上的方案提供由 SiteGround 自行開發的「Special Cache」快取功能,號稱能夠最佳化網站速度。

若你想要從 SiteGround 開始,我會建議選擇 GrowBig 以上方案來使用它提供的客製化快取功能。此外,它也附送一個網域名稱(每年價格 $14.95 美元,但不在可退費的範圍),以及 30 天不滿意全額退款保證。

DreamHost

DreamHost 旗下有個名為「DreamPress」的 WordPress Hosting 方案,是專為 WordPress 設計的架站平台,比較特別的是不同於一般的虛擬主機,DreamPress 採用將網站空間與資料庫分離的設計,每一個 WordPress 網站都是在虛擬專屬主機(Virtual Private Servers,簡稱 VPS)運作,即使你不懂技術也沒關係,DreamHost 讓這些都全自動處理,號稱能承載每月超過兩百萬的訪客數量。

DreamPress 2 的起始價格為每月 $19.95 美元(年繳),採用 WordPress 全自動化安裝、更新維護,以及每日自動備份,對於想要架設 WordPress 的使用者來說,DreamPress 是個相當不錯的選擇。

Media Temple

Media Temple 是頗有知名度的網站空間提供商,一直以來以穩定、安全、可信賴的服務而聞名,早先最多人推薦的是他們的 VPS 服務,不過後來也推出 WordPress Hosting ,成為旗下的主要產品。跟前面的 DreamPress 一樣,Media Temple 也提供客製化的安裝平台,讓你無須使用傳統的安裝方法即可快速建立自己的 WordPress 網站。

Media Temple 的 WordPress Hosting 提供數種規格,差異在於可託管的網站數量、可用空間和每月訪客數限制不同,最便宜的方案每月 $20 美元起跳,年繳還可享受兩個月免費,一次繳兩年、三年的優惠更多。

HostGator

我先前已經在虛擬主機推薦裡介紹過 HostGator,也使用 HostGator 來實際操作租用、架設 WordPress 網站教學,相信大家對它都不陌生。HostGator 堪稱是世界數一數二的虛擬主機提供商,旗下有相當多的用戶和託管網站,當然價格、穩定性方面也不在話下。

HostGator 有號稱為 WordPress 設計的 WordPress Hosting,不過倒是比較像一般虛擬主機下去做宣傳、推廣而已,沒有其他特殊功能(但用 HostGator 倒還蠻穩定的,而且沒有流量和訪客數量限制)。註冊時可使用本站提供的折扣代碼 FREEGROUP25 ,享受到總金額折抵 25% 的優惠,也就是平均每個月只要 $5.22 USD。

Bluehost

Bluehost 跟 HostGator 一樣,也是非常老牌、世界級的虛擬主機提供商,不過 Bluehost 是 WordPress 官方推薦使用的虛擬主機,它針對 WordPress 推出最佳化的空間(Optimized Hosting),建立在 VPS 技術上,讓 WordPress 有更好的效能表現。

Bluehost 的 WordPress Hosting 是以訪客數、容量、記憶體和可託管的網站數來做價格上的劃分,最便宜的起始方案第一個月是 $12.49 美元,提供 30 天試用,不滿意退款保證。以它提供的方案來說,最便宜的 Blogger 方案應該已經符合大部分中小型網站的需要。

接下來,交給你了!

在介紹完五個我推薦的 WordPress Hosting,相信對於想要架站的朋友來說,又多了一些不同的選擇。接下來,你可以參考以下我之前寫過的文章,或許對於要搬家的你來說會有一些幫助,不過別忘記了,這是 WordPress Hosting,你可能無須手動安裝 WordPress。

  • 自架 WordPress 虛擬主機租用教學,將網誌備份匯出、匯入到新家

對於 WordPress Hosting,你還有更多的推薦選項嗎?歡迎在文章下方提供給大家,與我進行交流,下一步我會實際以 WordPress Hosting 來快速架設一個 WordPress 網站教學,希望大家會喜歡囉!

  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 Twitter(在新視窗中開啟)
  • 分享到 LinkedIn(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Pocket(在新視窗中開啟)

相關文章

本站聲明:網站內容來源免費資源網路社群https://free.com.tw,如有侵權,請聯繫我們,我們將及時處理

【精選推薦文章】

自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

評比前十大台北網頁設計台北網站設計公司知名案例作品心得分享

台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包"嚨底家"

如何下載、匯入 WordPress 佈景主題開發測試範例元件(Theme Unit Test)?

說到 WordPress,最為人津津樂道的就是它的外掛和佈景主題資料庫相當龐大,也因為它提供了非常完整的開發資源,讓每個人都能設計自己所需的元件或模版樣式。如果你也想為自己的 WordPress 網站開發獨特的版面設計,官方說明文件(WordPress Codex)提供了一個測試範例元件檔案,能產生一堆用來開發測試用的內容,非常好用。

這個檔案收錄在「Theme Unit Test」裡,可能很多人不知道,其實它就是一個包含許多測試內容的 xml 文件,幾乎用到了所有 WordPress 裡可能出現的功能和內容,包括不同階層標題、項目符號、表格、文字樣式、圖片、特殊字元、分類標籤、分頁、多媒體等等。

利用 WordPress 本身的匯入功能,即可把這些內容快速置入測試用網站裡。

使用教學

接下來的步驟會匯入大量的測試開發元件,請在全新的 WordPress 網站進行操作,以免發生問題。

STEP 1

開啟 WordPress Codex 的 Theme Unit Test 頁面,從 Setup 的第一項來下載測試資料,下載後是一個 .xml 的檔案格式,稍後我會再教你怎麼把資料正確匯入 WordPress。

STEP 2

登入剛架設好的 WordPress 網站控制台(記得用全新的網站測試),從左側選單點選「工具」內的「匯入」,然後找到 WordPress 。

第一次使用時會先安裝 WordPress Importer 外掛,點選右下角的「立刻安裝」,安裝後啟用外掛,即可進入匯入工具。

STEP 3

接著回到匯入工具,在 Import WordPress 頁面裡點選「瀏覽」來選取剛才下載的開發測試檔案(theme-unit-test-data.xml),然後按下「上傳檔案並匯入」按鈕。

STEP 4

接著會開始進行匯入檔案前的設定,在這裡別忘記勾選 Import Attachments 下方的「Download and import file attachments」來下載、匯入附件檔案,勾選後按下「Submit」就會將測試元件匯入 WordPress 網站。

STEP 5

匯入完成,你可以看到原先空蕩蕩的 WordPress 網站裡瞬間多出很多測試用的內容。

回到 WordPress 網站首頁,也可以看到各種類型的文章、分頁和分類彙整被加入,這些內容涵蓋許多設計佈景主題時會用到的測試內容,協助開發者在製作佈景主題樣式時可以直接檢視效果,而不需要再自行手動產生測試用的元件。

  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 Twitter(在新視窗中開啟)
  • 分享到 LinkedIn(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Pocket(在新視窗中開啟)

相關文章

本站聲明:網站內容來源免費資源網路社群https://free.com.tw,如有侵權,請聯繫我們,我們將及時處理

【精選推薦文章】

智慧手機時代的來臨,RWD網頁設計已成為網頁設計推薦首選

想知道網站建置、網站改版該如何進行嗎?將由專業工程師為您規劃客製化網頁設計及後台網頁設計

帶您來看台北網站建置台北網頁設計,各種案例分享

廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

啟用 Jetpack「單一登入」機制教學,讓你的 WordPress 網站更安全(含兩步驟驗證)

好像有一段時間沒有寫關於 WordPress 架站的相關文章,事實上,最近找到一個能夠有效提升 WordPress 安全性的方法,簡單來說,啟用內建於 Jetpack 外掛的「單一登入」模組,也就是 Single Sign On(SSO)功能,然後把原本帳號密碼驗證方式關閉停用,將驗證導回讓 WordPress.com 處理。

這麼做有那些好處呢?除了可為帳號加上兩階段驗證保護,從應用程式或手機來接受驗證碼,提高帳號安全性以外,更大的優點是自己的網站無須負載被暴力攻擊、破解的資源耗費問題,因為驗證會被導向 WordPress.com,這個由 Automattic 營運的平台將提供更好的安全性防護。

使用 WordPress 架站的話一定知道:WordPress 登入畫面預設是對外開放的,這也表示任何人都可以存取你的登入頁面,甚至可能從其他地方取得密碼並登入網站。為了更好的安全性,建議要妥善保護好登入頁面(延伸閱讀:安裝 WordPress 後你應該做的 25 件事、9 個提升 WordPress 網站安全性的方法)。

不過,現在不用這麼麻煩了!因為 Jetpack 的 Single Sign On(SSO)把登入驗證的任務交給 WordPress.com 為你把關,拋棄那些第三方登入、兩階段驗證的相關外掛吧!照著接下來的教學,我會教你如何快速有效提升網站的登入頁面安全性。

使用「單一登入」功能保護你的 WordPress

WordPress 的「單一登入(SSO)」功能提供了一個更安全的驗證方法,以保護你的網站免於受到暴力破解攻擊。一旦啟用,你原有的 WordPress 登入畫面會被關閉,你必須登入 WordPress.com 帳號才能進入自己的 WordPress 網站控制台。

Digital Inspiration 在這篇文章提到開啟「單一登入」有這些好處:

  1. 由於 WordPress.com 已經支援兩階段驗證,現在啟用後將能為你的網站提供相同等級的安全防護機制,而且不需要安裝額外的外掛功能。
  2. 你網站所有登入請求,包括惡意登入嘗試,現在都會被導向 WordPress.com,進而減少伺服器和資料庫的負載
  3. 如果你管理多個網站,你可以使用單一 WordPress.com 帳戶來登入、管理,無須記住多組不同的帳號密碼組合。

如何使用 Jetpack 實現「單一登入」?

STEP 1

如果你從來沒用過 Jetpack 外掛,那麼你可能也沒有 WordPress.com 帳戶,可以先開啟這個鏈結,填入 Email、使用者名稱、密碼等相關資訊來建立一個 WP.com 帳號。在註冊時你可能會被要求建立一個 WordPress 網誌,但這不會影響接下來的操作。

STEP 2

申請好 WordPress.com 帳號後,開啟這個鏈結,為你的帳號設定「兩步驟驗證」,增添額外的安全防護。設定前要先填入自己的手機號碼,下載兩階段驗證專用的手機應用程式,跟著網頁步驟操作即可完成設定。

延伸閱讀:

  • 8 個線上服務「兩步驟驗證」設定說明,確保帳戶免於威脅

一旦啟用你的 WordPress.com 兩步驟驗證後,未來當你登入帳號時不僅要輸入正確的使用者名稱、密碼,同時也要輸入一組由行動裝置產生的驗證碼。

STEP 3

回到你的 WordPress 網站,從「外掛 | 安裝外掛」頁面找到 Jetpack,點選「立刻安裝」來自動下載、安裝到你的網站。

第一次使用 Jetpack 時會要求連接到你的 WordPress.com 帳戶,按下連接、登入帳號後,點選「Approve」藍色按鈕即可把網站與你的帳號連結。

STEP 4

設定好 Jetpack 後,即可開啟相關模組功能(在 Jetpack 3.8 版時出現一個問題,那就是介面會變成英文版,不過不影響使用)。

找到我們需要的「單一登入(英文為 Single Sign On)」,然後將它啟用。

STEP 5

以 FTP、SFTP 或 SSH 連接到你的 WordPress 伺服器,開啟當前使用的佈景主題資料夾(路徑為 wp-content/themes/theme-name),編輯 functions.php 檔。複製以下程式碼,貼到檔案後儲存:

add_filter( 'jetpack_sso_bypass_login_forward_wpcom', '__return_true' );

這個步驟主要用於「停用 WordPress 內建的登入頁面」,改由重新導向至 WordPress.com 進行登入及驗證身份。如果你的網誌是屬於多人協作,或者你希望保留原有的登入畫面,可跳過此步驟。

STEP 6

前往「帳號 | 個人資訊」頁面,可以在最底部找到「Log in with WordPress.com」按鈕,這是用來把你的網站登入帳號連結 WordPress.com 帳號。登入後,你就能看到如下畫面,表示已成功連結(Connected)至這個帳號,同時也啟用了兩步驟驗證。

STEP 7

最後,當你登出、重新登入 WordPress 時,就不會出現原有的登入頁面,而是被引導至 WordPress.com 網站,你必須在這裡登入已連結的 WordPress.com 帳號,通過驗證後就可以進入你的控制台囉!

若你在設定途中發現任何問題,導致無法正確登入網站的話,可以把步驟五的程式碼從檔案裡移除,然後將 Jetpack 外掛資料夾整個刪除,就能暫時關閉、停用「單一登入」。

另外,Jetpack 裡也提供了幾個非常實用的模組,建議開啟:

  • Photon 免費 CDN 圖片分流、加速服務,每個 WordPress 用戶都該開啟的外掛
  • Jetpack Monitor 免費 24/7 網站監測服務,WordPress 無法連線自動發送提醒
  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 Twitter(在新視窗中開啟)
  • 分享到 LinkedIn(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Pocket(在新視窗中開啟)

相關文章

本站聲明:網站內容來源免費資源網路社群https://free.com.tw,如有侵權,請聯繫我們,我們將及時處理

【精選推薦文章】

如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

想要讓你的商品在網路上成為最夯、最多人討論的話題?

網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

不管是台北網頁設計公司台中網頁設計公司,全省皆有專員為您服務

想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師"嚨底家"!!

Zabbix監控ActiveMQ

當我們在線上使用了ActiveMQ 后,我們需要對一些參數進行監控,比如 消息是否有阻塞,哪個消息隊列阻塞了,總的消息數是多少等等。下面我們就通過 Zabbix 結合 Python 腳本來實現對 ActiveMQ的監控。

一、創建 Activemq Python 監控腳本

因為 CentOS 系統默認安裝的是 Python2.7,為了避免麻煩,我們這裏的腳本也是對應的 Python2

Python2 監控腳本

# -*- coding: utf-8 -*-
# @Time    : 2019/6/25 9:26
# @Author  : djx
# @Email   : djxlsp@163.com
# @File    : mointer_mq_python2.py
# @Software: PyCharm
# @Python_version: python2.7

import base64
import urllib2
import json
import logging
import sys


def activemq_mointer(userinfo_encode):
    # 總的消息阻塞數
    pending_queue_sum = 0
    # 阻塞消息的隊列名稱
    pending_queue_lists = ''
    # 總的消息數
    mq_sum = 0
    headers = {
        'Authorization': 'Basic {}'.format(userinfo_encode),
        'ua': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.125 Safari/537.36'
    }
    url = 'http://' + ip + ':' + port + \
          '/api/jolokia/read/org.apache.activemq:type=Broker,brokerName=localhost/Queues/'
    request = urllib2.Request(url=url, headers=headers)
    try:
        response = urllib2.urlopen(request)
    except Exception as e:
        logging.error(e)
        return {'pending_queue_sum': 110, 'pending_queue_lists': '110', 'mq_sum': 0}  # 當服務不可用時,返回預警数字,用於預警。
    activemq_info = response.read()
    activemq_info_json = json.loads(activemq_info)
    activemq_queues = activemq_info_json['value']
    for i in activemq_queues:
        queue_url = 'http://' + ip + ':' + port + \
            '/api/jolokia/read/' + i['objectName']
        queue_request = urllib2.Request(url=queue_url, headers=headers)
        try:
            queue_response = urllib2.urlopen(queue_request)
        except Exception as e:
            logging.error(e)
            return {'pending_queue_sum': 110, 'pending_queue_lists': '110', 'mq_sum': 0}
        queue_info = queue_response.read()
        info_dict = json.loads(queue_info)
        mq_sum += info_dict['value']['EnqueueCount']
        if int(info_dict['value']['QueueSize']
               ) > 0:  # 取值 QueueSize ,就是未消費的消息數量
            pending_queue_sum += info_dict['value']['QueueSize']
            pending_queue_lists += info_dict['value']['Name']
            pending_queue_lists += ' and '
            logging.info(
                "消息隊列--{}--有阻塞消息--{} 條".format(
                    info_dict['value']['Name'],
                    info_dict['value']['QueueSize']))
    return {'pending_queue_sum': pending_queue_sum, 'pending_queue_lists': pending_queue_lists, 'mq_sum': mq_sum}


if __name__ == '__main__':
    # ActiveMQ 服務器信息
    username = 'admin'
    password = 'admin'
    ip = '127.0.0.1'
    port = '8161'
    userinfo = username + ':' + password
    userinfo_encode = base64.b64encode(userinfo.encode('utf8'))
    # 日誌配置,注意下面日誌文件的路徑是採用相對路徑的。
    logging.basicConfig(
        filename="activemq_mointer.log",
        filemode="a",
        format="%(asctime)s %(name)s:%(levelname)s:%(message)s",
        datefmt="%Y-%m-%d %H:%M:%S",
        level=logging.DEBUG)
    if len(sys.argv) == 2:
        mointer_argv = sys.argv[1]
        if mointer_argv in ('pending', 'pending_lists', 'queue_sum'):
            mq_re = activemq_mointer(userinfo_encode)
            if mointer_argv == 'pending':
                print(mq_re['pending_queue_sum'])
            elif mointer_argv == 'pending_lists':
                print(mq_re['pending_queue_lists'])
            else:
                print(mq_re['mq_sum'])
        else:
            # 錯誤提示
            print("Please enter the correct parameters pending|pending_lists|queue_sum")
    else:
        # 錯誤提示
        print("Please enter the correct parameters pending|pending_lists|queue_sum")

使用該腳本注意事項:

  1. 傳入參數只能一個 ,而且只能是 pending, pending_lists, queue_sum ,分別代表阻塞消息數、阻塞消息隊列名稱、總的消息數。

  2. 腳本有日誌記錄和異常記錄,注意設置 日誌文件路徑,假設腳本路徑位於 /opt/scripts/,我們在該目錄下進行執行腳本的話,activemq_mointer.log 日誌文件也就會產生在當前目錄下。我們可以在路徑中通過相對路徑來指定文件夾 形如 ../..//var/log/activemq_mointer.log

  3. 該腳本是由 zabbix agent 進行使用 ,所以我們需要設置該 腳本的權限,以及保證該腳本的用戶有創建日誌文件的權限(或者我們先前創建好對應權限日誌文件)

    sudo chown  zabbix:zabbix  mointer_mq_python2.py
    sudo  chmod 744 mointer_mq_python2.py
    sudo  touch /var/log/activemq_mointer.log
    sudo chown  zabbix:zabbix  /var/log/activemq_mointer.log

二 、設置 zabbix agent

設置 zabbix agent

# 將監控項配置寫入配置文件
sudo echo "UserParameter=activemq.mointer[*],python /opt/scripts/mointer_mq_python2.py \$1 " >> /opt/zabbix-agent/etc/zabbix_agentd.conf
# 重啟zabbix agent
sudo systemctl restart  zabbix-agent 

三、導入監控項:

監控模板 xml 文件。(該監控模板包含三個監控項,一個觸發器)

<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
    <version>4.0</version>
    <date>2019-06-26T03:49:47Z</date>
    <groups>
        <group>
            <name>AWS-1688</name>
        </group>
        <group>
            <name>Fy-hbg</name>
        </group>
    </groups>
    <templates>
        <template>
            <template>Template App ActiveMQ</template>
            <name>Template App ActiveMQ</name>
            <description/>
            <groups>
                <group>
                    <name>AWS-1688</name>
                </group>
                <group>
                    <name>Fy-hbg</name>
                </group>
            </groups>
            <applications>
                <application>
                    <name>ActiveMQ</name>
                </application>
            </applications>
            <items>
                <item>
                    <name>activemq pending amount</name>
                    <type>0</type>
                    <snmp_community/>
                    <snmp_oid/>
                    <key>activemq.mointer[pending]</key>
                    <delay>1m</delay>
                    <history>90d</history>
                    <trends>365d</trends>
                    <status>0</status>
                    <value_type>3</value_type>
                    <allowed_hosts/>
                    <units>條</units>
                    <snmpv3_contextname/>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authprotocol>0</snmpv3_authprotocol>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privprotocol>0</snmpv3_privprotocol>
                    <snmpv3_privpassphrase/>
                    <params/>
                    <ipmi_sensor/>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>ActiveMQ</name>
                        </application>
                    </applications>
                    <valuemap/>
                    <logtimefmt/>
                    <preprocessing/>
                    <jmx_endpoint/>
                    <timeout>3s</timeout>
                    <url/>
                    <query_fields/>
                    <posts/>
                    <status_codes>200</status_codes>
                    <follow_redirects>1</follow_redirects>
                    <post_type>0</post_type>
                    <http_proxy/>
                    <headers/>
                    <retrieve_mode>0</retrieve_mode>
                    <request_method>0</request_method>
                    <output_format>0</output_format>
                    <allow_traps>0</allow_traps>
                    <ssl_cert_file/>
                    <ssl_key_file/>
                    <ssl_key_password/>
                    <verify_peer>0</verify_peer>
                    <verify_host>0</verify_host>
                    <master_item/>
                </item>
                <item>
                    <name>activemq pending queue name</name>
                    <type>0</type>
                    <snmp_community/>
                    <snmp_oid/>
                    <key>activemq.mointer[pending_lists]</key>
                    <delay>1m</delay>
                    <history>90d</history>
                    <trends>0</trends>
                    <status>0</status>
                    <value_type>1</value_type>
                    <allowed_hosts/>
                    <units/>
                    <snmpv3_contextname/>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authprotocol>0</snmpv3_authprotocol>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privprotocol>0</snmpv3_privprotocol>
                    <snmpv3_privpassphrase/>
                    <params/>
                    <ipmi_sensor/>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>ActiveMQ</name>
                        </application>
                    </applications>
                    <valuemap/>
                    <logtimefmt/>
                    <preprocessing/>
                    <jmx_endpoint/>
                    <timeout>3s</timeout>
                    <url/>
                    <query_fields/>
                    <posts/>
                    <status_codes>200</status_codes>
                    <follow_redirects>1</follow_redirects>
                    <post_type>0</post_type>
                    <http_proxy/>
                    <headers/>
                    <retrieve_mode>0</retrieve_mode>
                    <request_method>0</request_method>
                    <output_format>0</output_format>
                    <allow_traps>0</allow_traps>
                    <ssl_cert_file/>
                    <ssl_key_file/>
                    <ssl_key_password/>
                    <verify_peer>0</verify_peer>
                    <verify_host>0</verify_host>
                    <master_item/>
                </item>
                <item>
                    <name>Total number of  activemq msg</name>
                    <type>0</type>
                    <snmp_community/>
                    <snmp_oid/>
                    <key>activemq.mointer[queue_sum]</key>
                    <delay>1m</delay>
                    <history>90d</history>
                    <trends>365d</trends>
                    <status>0</status>
                    <value_type>3</value_type>
                    <allowed_hosts/>
                    <units>條</units>
                    <snmpv3_contextname/>
                    <snmpv3_securityname/>
                    <snmpv3_securitylevel>0</snmpv3_securitylevel>
                    <snmpv3_authprotocol>0</snmpv3_authprotocol>
                    <snmpv3_authpassphrase/>
                    <snmpv3_privprotocol>0</snmpv3_privprotocol>
                    <snmpv3_privpassphrase/>
                    <params/>
                    <ipmi_sensor/>
                    <authtype>0</authtype>
                    <username/>
                    <password/>
                    <publickey/>
                    <privatekey/>
                    <port/>
                    <description/>
                    <inventory_link>0</inventory_link>
                    <applications>
                        <application>
                            <name>ActiveMQ</name>
                        </application>
                    </applications>
                    <valuemap/>
                    <logtimefmt/>
                    <preprocessing/>
                    <jmx_endpoint/>
                    <timeout>3s</timeout>
                    <url/>
                    <query_fields/>
                    <posts/>
                    <status_codes>200</status_codes>
                    <follow_redirects>1</follow_redirects>
                    <post_type>0</post_type>
                    <http_proxy/>
                    <headers/>
                    <retrieve_mode>0</retrieve_mode>
                    <request_method>0</request_method>
                    <output_format>0</output_format>
                    <allow_traps>0</allow_traps>
                    <ssl_cert_file/>
                    <ssl_key_file/>
                    <ssl_key_password/>
                    <verify_peer>0</verify_peer>
                    <verify_host>0</verify_host>
                    <master_item/>
                </item>
            </items>
            <discovery_rules/>
            <httptests/>
            <macros/>
            <templates/>
            <screens/>
        </template>
    </templates>
    <triggers>
        <trigger>
            <expression>{Template App ActiveMQ:activemq.mointer[pending].avg(10m)}&gt;=5</expression>
            <recovery_mode>1</recovery_mode>
            <recovery_expression>{Template App ActiveMQ:activemq.mointer[pending].avg(5m)}=0</recovery_expression>
            <name>activemq queue  pending on {HOST.NAME}</name>
            <correlation_mode>0</correlation_mode>
            <correlation_tag/>
            <url/>
            <status>0</status>
            <priority>3</priority>
            <description>activemq 消息發生阻塞,10分鐘內平均阻塞消息數超過5條</description>
            <type>0</type>
            <manual_close>0</manual_close>
            <dependencies/>
            <tags/>
        </trigger>
    </triggers>
</zabbix_export>

將該監控模板鏈接到對應的主機。

我們可以看到我們監控的數據了。

至此,ActiveMQ 的監控項都已經配置好了。

【精選推薦文章】

自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

評比前十大台北網頁設計台北網站設計公司知名案例作品心得分享

台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包"嚨底家"