如何修復 reCAPTCHA 在 WordPress 中不起作用

已發表: 2023-03-07

您的 reCAPTCHA 是否無法在您的 WordPress 網站上運行?

reCAPTCHA 是 Google 提供的一項免費服務,可幫助保護網站免受垃圾郵件的侵害,許多 WordPress 用戶喜歡使用它。 reCAPTCHA 是您網站上的一項有用功能,尤其是在通過使用表單邀請交流時。

因此,當 reCAPTCHA 無法在您的網站上運行時,這可能會非常令人沮喪。

在您的 WordPress 網站上遇到 reCAPTCHA 問題的常見原因有很多,我們可以幫助您解決這些問題。

立即將 reCAPTCHA 添加到您的 WordPress 表單

為什麼我的 reCAPTCHA 在 WordPress 中不起作用?

通常,reCAPTCHA 的問題是由於它在您網站設置中的配置方式而引起的。

WPForms 是最好的 WordPress 表單生成器插件。 免費獲取!

插件選項、主題功能和其他站點設置都會影響 reCAPTCHA 在您的 WordPress 站點上的運行方式。 例如,您的 WPForms 插件設置會影響此保護如何應用於您網站上提交的表單。 幸運的是,通過對這些設置進行一些調查可以解決 reCAPTCHA 問題。

在本文中,我們將介紹您在使用 reCAPTCHA 時可能遇到的常見問題,以及如何解決這些問題。 此外,作為獎勵,我們將提供一些替代方法來保護您的網站,因此您根本不必使用 reCAPTCHA。

如何修復 reCAPTCHA 在 WordPress 中不起作用

在本文中

  • 1.無法啟用reCAPTCHA
  • 2.無效的站點密鑰
  • 3.谷歌reCAPTCHA驗證失敗
  • 4. “This field is required”錯誤信息
  • 5. reCAPTCHA 並沒有減少垃圾郵件
  • reCAPTCHA 的替代品

1.無法啟用reCAPTCHA

將字段拖放到您在 WPForms 中構建的表單時,您可能會發現無法添加或啟用 reCAPTCHA 字段。

此問題通常是由於表單生成器設置中的 reCAPTCHA 密鑰問題引起的,這是您首先要解決此問題的地方。

在您的 WPForms 設置中,您需要確保已正確輸入您的 reCAPTCHA 密鑰。

如果您的設置中沒有正確的 reCAPTCHA 密鑰,reCAPTCHA 字段在表單構建器的可用字段中仍然可見,但如果您嘗試使用它,您將收到一條警告消息。

Google reCAPTCHA configuration message

因此,前往WPForms » 設置 » CAPTCHA檢查您的 reCAPTCHA 密鑰是否已正確添加到 reCAPTCHA 密鑰字段。

您可能會在這裡發現您根本沒有 reCAPTCHA 密鑰。 因此,您需要從 Google 生成這些密鑰。

如您所見,我們為此過程提供了分步教程,您可以從表單生成器上顯示的消息中獲取該教程。

生成密鑰後,您可以將 reCAPTCHA 密鑰應用於表單構建器的設置。

導航至WPForms » 設置 » 驗證碼以輸入您的 reCAPTCHA 密鑰。

Entering reCAPTCHA settings

然後,返回到表單生成器以添加 reCAPTCHA 字段並在您的表單上啟用 reCAPTCHA。

在 WPForms 設置中添加並啟用 reCAPTCHA 密鑰後,您應該能夠毫無問題地將 reCAPTCHA 字段添加到表單中。

2.無效的站點密鑰

您的 reCAPTCHA 在 WordPress 中不工作的另一個原因可能是由於無效的站點密鑰。

如果您在嘗試將 reCAPTCHA 添加到表單時收到一條消息,內容為“站點所有者錯誤:站點密鑰無效”,那麼您就會知道是這種情況。

這意味著,如錯誤消息所示,添加到WPForms » Settings » CAPTCHA 的reCAPTCHA 密鑰無效。 可能密鑰被錯誤地複製到您的 WPForms 設置,或者它們被意外地從您的 Google reCAPTCHA 帳戶中刪除。

因此,您需要仔細檢查您從 Google 獲得的 reCAPTCHA 密鑰,並確保它們與您應用到 WPForms 設置的密鑰相匹配。

Entering site key in settings

要修復您的無效站點密鑰,您可能只需要在 Google 站點上重新生成 Google reCAPTCHA 密鑰。

如果您在 Google 中重新生成您的 reCAPTCHA 密鑰,請務必在您的 WPForms 設置中添加新密鑰。 返回WPForms » 設置 » 驗證碼以添加並啟用您重新生成的密鑰。

3.谷歌reCAPTCHA驗證失敗

無法驗證 reCAPTCHA 是您在使用 WordPress 時可能會遇到的另一個常見問題,發生這種情況的原因有很多。

Configuring reCAPTCHA

如果發生這種情況,您將收到一條消息,內容為“Google reCAPTCHA 驗證失敗,請稍後重試。” 在提交表單後,此錯誤消息將出現在 reCAPTCHA 字段之後

要解決此問題,請通過重複上面問題 #2 中描述的步驟來檢查它是否與不正確的 reCAPTCHA 密鑰有關。

您的站點密鑰可能有誤,或者它們在您的 Google reCAPTCHA 帳戶中的配置可能不正確。 如果是這樣,您應該簡單地生成一組新的 reCAPTCHA 密鑰。

如果使用您的站點密鑰仍無法成功提交表單,請檢查您的優化插件,例如 WP Rocket、Autoptimize 等。您可能需要更改這些插件中的一些設置以解決您的 reCAPTCHA 問題。

在您的優化插件中,暫時禁用 Javascript 優化設置。 然後,保存這些設置並清除緩存以查看它是否解決了 reCAPTCHA 問題。

4. “This field is required”錯誤信息

reCAPTCHA 時您可能會遇到的另一條錯誤消息是“This field is required”,並出現在 reCAPTCHA 字段之後。

通常,此錯誤是由與另一個 reCAPTCHA 代碼衝突引起的。 您可能有多個已由其他插件或您網站的主題加載的 reCAPTCHA。

要查看是否屬於這種情況,請嘗試檢查表單生成器中的控制台錯誤。

只需右鍵單擊屏幕或單擊右上角的三個垂直點即可打開“檢查”工具,然後選擇“控制台”選項卡。

Checking for console errors

如果 reCAPTCHA 已加載兩次,您將看到如下所示的控制台錯誤消息。

Console error message

如果您看到此消息,則需要在插件設置或主題選項中檢查另一個 reCAPTCHA 選項。 嘗試追踪其他 reCAPTCHA 代碼。

有時,只需在 W3 Total 緩存插件的性能»常規設置»雜項下禁用“啟用 Google Page Speed 儀表板小部件”選項即可解決此問題。

Enabling Google pagespeed dashboard widget

如果您找不到衝突的 reCAPTCHA 選項,請嘗試在 WPForms 的 reCAPTCHA 設置中啟用無衝突模式,看看是否可以解決問題。

Enabling no conflict mode in the WPForms reCAPTCHA settings

5. reCAPTCHA 並沒有減少垃圾郵件

有時,您的 reCAPTCHA 看起來好像沒有任何問題,但它仍然沒有降低您網站收到的垃圾郵件的水平。

在這種情況下,最簡單的解決方案可能是增加您在 Google 中的 reCAPTCHA 的強度。 這是您會在 Google reCAPTCHA 帳戶中執行的操作,而不是在 WordPress 中執行的操作。

再次前往您的 Google reCAPTCHA 設置以配置您的 reCAPTCHA 的類型和強度。

Editing reCAPTCHA settings

借助 Google 的 reCAPTCHA Enterprise,您可以使用 reCAPTCHA 創建各種項目和評估以獲得更多自定義選項。

Editing reCAPTCHA project

另一件可以嘗試的事情是在 Google 中使用 v3 或 Checkbox reCAPTCHA,因為不可見的 reCAPTCHA 是垃圾郵件發送者最容易繞過的保護類型。

Select reCAPTCHA v2

您也可以在您的 Google 帳戶中增加這些 reCAPTCHA 類型的強度。

reCAPTCHA 的替代品

您可能最終決定完全放棄 reCAPTCHA 並尋求替代方法。 我們懂了!

幸運的是,還有一些其他方法可以保護您的網站。 WPForms 提供自己的垃圾郵件保護和安全設置,其中大部分都可以在設置»垃圾郵件保護和安全下的表單構建器中找到。

啟用反垃圾郵件保護

WPForms 有一個內置的反垃圾郵件保護層,它驗證 WPForms 插件添加到每個表單的令牌。

Enabling the WPForms anti-spam token

啟用反垃圾郵件保護設置後,如果機器人觸發反垃圾郵件保護,您的表單將不會被提交。

默認情況下應啟用反垃圾郵件保護選項,但您可以在 WPForms垃圾郵件保護和安全設置中檢查它。

啟用 Akismet 反垃圾郵件保護

Akismet 是一個流行的 WordPress 網站垃圾郵件保護插件。 它通常用於過濾掉評論中的垃圾郵件,但也可以與 WPForms 集成以保護您的網站免受來自您的表單的垃圾郵件。

因此,您首先需要安裝並激活 Akismet Spam Protection 插件以在 WPForms 中啟用此反垃圾郵件保護。

安裝插件後,Akismet 會將您重定向到它自己的設置頁面。 從那裡,您將按照設置帳戶和添加 Akismet API 密鑰的步驟進行操作。

然後,返回到表單生成器中的設置 » 垃圾郵件保護和安全並啟用 Akismet 反垃圾郵件保護選項。

Enabling the Akismet anti-spam protection

添加其他驗證碼設置:hCaptcha、Cloudflare Turnstile 或自定義驗證碼

除了 reCAPTCHA 之外,您還可以在自己的網站上使用一些 CAPTCHA 選項。

例如,hCaptcha 是免費且注重隱私的,但仍提供可靠的反垃圾郵件保護。 或者您可以使用 Cloudflare Turnstile,這是另一種類似於驗證碼的解決方案。 它允許用戶提交表單而無需解決難題。

要設置 hCaptcha 或 Cloudflare Turnstile,請轉至WPForms » 設置 » CAPTCHA。 然後,選擇您要使用的選項。

Entering CAPTCHA settings

在保存設置之前,您需要從每個帳戶生成 API 密鑰並將它們添加到此處。

此外,您可以通過使用WPForms Custom Captcha Addon創建自己的問答或數學驗證碼來防止垃圾郵件。

在將自定義驗證碼應用於您的表單之前,您需要激活自定義驗證碼插件。

導航到 WordPress 儀表板中的WPForms選項卡並選擇Addons 。 向下滾動頁面以查找並激活自定義驗證碼插件。

Activating custom captcha addon

然後,返回到表單生成器中的設置 » 垃圾郵件防護和安全性

“也可用”部分中,您會找到自定義驗證碼選項。 單擊添加到表單以將自定義驗證碼添加到您的表單。

Adding custom CAPTCHA to a form

然後,您可以通過從下拉菜單中選擇數學問答來選擇向用戶顯示哪種類型的驗證碼。

添加垃圾郵件過濾器:國家/地區過濾器或關鍵字過濾器

使用國家/地區過濾器是允許或拒絕來自特定國家/地區的表單提交的一種簡單而有效的方法。

要從表單生成器啟用此功能,請前往設置 » 安全和垃圾郵件防護,然後打開啟用國家過濾器選項。

Enabling country filter in settings

如果用戶嘗試從選定國家/地區之外提交表單,則表單將無法提交。 他們會收到這樣的消息:“抱歉,此表格不接受來自您所在國家/地區的提交。”

您也可以將相同的過程應用於關鍵字。

要啟用關鍵字過濾器,請將啟用關鍵字過濾器選項切換到打開位置。 然後,將特定的單詞和短語添加到關鍵字列表中。

Enabling keyword filter in settings

現在,當用戶嘗試使用列出的關鍵字之一提交表單時,表單將無法提交。 他們會收到一條消息,上面寫著:“抱歉,您的消息無法提交,因為它包含違禁詞。”

創建允許列表或拒絕列表

您還可以使用許可名單或拒絕名單來保護您的表單免受垃圾郵件的侵害。 此設置根據用戶的電子郵件地址允許或拒絕表單用戶。

Selecting an allowlist / denylist option

要創建許可名單或拒絕名單,請打開表單生成器並確保在您的表單中包含電子郵件字段。

在電子郵件字段的高級選項中,使用允許列表/拒絕列表下拉列表來啟用您的列表並添加您的規則。

這只是 WPForms 提供的保護措施的簡要總結。 有關如何將這些措施中的每一項應用於您的 WordPress 網站的完整說明,請查看此詳盡的教程。

立即將 reCAPTCHA 添加到您的 WordPress 表單

接下來,停止聯繫表單垃圾郵件

在這篇文章中,我們介紹了很多保護 WordPress 表單的方法。 大多數垃圾郵件來自試圖在您的網站上提交聯繫表格的機器人。

但是,您可以使用我們在本終極指南中介紹的技巧來防止垃圾郵件滲入您的網站。 您會找到與我們已在此處列出的一些選項相關的深入詳細信息,以及保護您網站的其他建議。

準備好構建表單了嗎? 今天開始使用最簡單的 WordPress 表單生成器插件。 WPForms Pro 包含大量免費模板,並提供 14 天退款保證。

如果本文對您有所幫助,請在 Facebook 和 Twitter 上關注我們以獲取更多免費的 WordPress 教程和指南。