如何將 Firebase 身份驗證添加到您的 Webflow 網站

使用 Webflow,您可以添加自定義代碼以創建簡單的用戶身份驗證流程。這使得您可以在網站中添加會員專屬頁面並實現用戶身份驗證。

查看此處的項目預覽:演示

項目設置

首先,您需要創建一個 Firebase 免費項目並擁有一個具有活動主機計劃的 Webflow 項目。

設置 Firebase

設置 Firebase 非常簡單,您只需創建一個帳戶,然後將獲得一個嵌入式網站的配置代碼。本教程的最後一部分將介紹如何將此代碼放入您的網站。

  • 要創建 Firebase 帳戶,請訪問此處的網站,然後使用您的 Google 帳戶登錄。
  • 創建一個新項目並隨意命名。
  • 轉到身份驗證選項並激活 Google 註冊。(您可以使用所有其他註冊選項,但對於本教程,您只需使用 Google 註冊)

在 Firebase 控制台中啟用 Google 身份驗證

在 Firebase 控制台中啟用 Google 身份驗證

  • 轉到授權域名部分,添加您自己的域名。

為 Firebase 登錄授權您的域名

設置 Webflow

  • 首先在 Webflow 中創建一個包含 登錄 和登出按鈕的登陸頁面(我們的腳本將根據用戶的登錄狀態顯示和隱藏這些按鈕)。
  • 為您的網站添加一個個人資料頁面。在這裡添加一個

條件可見性,以便僅在用戶登錄時顯示它。

Firebase SDK 代碼片段

整合 Firebase 和 Webflow

首先,從 Firebase 控制台獲取您的 Firebase 設置。選擇項目設置 > 一般 > 您的應用程式 > Firebase SDK 代碼片段 > 配置。複製這段代碼。

接下來,在 Webflow 設置中,轉到項目設置 > 自定義代碼 > 在 </head> 標籤中。在這裡,將複製的 Firebase 配置代碼粘貼到這裡。確保在 <script> 標籤中包裹它。

將 Firebase 代碼粘貼到 Webflow 設置中

  1. 現在,我們需要添加自定義登錄和登出腳本。首先,創建一個名為 “firebase-auth.js” 的新 JavaScript 文件。在此文件中添加以下代碼:

javascriptCopy code

// 初始化 Firebase firebase.initializeApp(firebaseConfig);  // 檢測用戶狀態變化 firebase.auth().onAuthStateChanged((user) => {   if (user) {     // 用戶已登錄     document.querySelector(".login").style.display = "none";     document.querySelector(".logout").style.display = "block";     document.querySelector(".user-email").textContent = user.email;   } else {     // 用戶已登出     document.querySelector(".login").style.display = "block";     document.querySelector(".logout").style.display = "none";   } });  // Google 登錄 function loginWithGoogle() {   var provider = new firebase.auth.GoogleAuthProvider();   firebase.auth().signInWithPopup(provider); }  // 登出 function logout() {   firebase.auth().signOut(); }  // 監聽按鈕點擊 document.querySelector(".login").addEventListener("click", loginWithGoogle); document.querySelector(".logout").addEventListener("click", logout);

  1. 在 Webflow 項目設置中,將此自定義腳本添加到自定義

代碼部分。將 <script src="firebase-auth.js"></script> 添加到 </head> 標籤中的自定義代碼部分。

將自定義腳本添加到 Webflow 設置中

將自定義腳本添加到 Webflow 設置中

  1. 在 Webflow 設計器中,為 Google 登錄按鈕添加一個 class 名稱為 “login”,並為登出按鈕添加一個 class 名稱為 “logout”。此外,添加一個 class 名為 “user-email”的文字元素,以在用戶登錄時顯示他們的電子郵件地址。
添加 class 名稱

添加 class 名稱

完成上述步驟後,您的 Webflow 網站應該能夠與 Firebase 進行整合,實現 Google 登錄和登出功能。當用戶登錄時,應該能看到他們的電子郵件地址,並且條件可見性設置可以確保僅在用戶登錄時顯示相應內容。

希望這對您的項目有所幫助!如果您有任何問題或需要進一步的解釋,請隨時詢問。

  1. 設置完成後,記得在 Webflow 的「設計」頁面中儲存您的更改。然後,在 Webflow 專案設置中選擇「發佈」以將新的功能應用到您的現有網站。
發佈變更

發佈變更

確保在網站上的所有需要認證的頁面都已經使用條件可見性設置。這樣,當用戶未登錄時,他們將無法看到這些受保護的內容。

請務必確保您的 Firebase 數據庫規則已經設置為保護用戶數據。這將有助於確保僅經過身份驗證的用戶可以訪問他們的個人信息。

如果您希望添加其他身份驗證提供商(如 Facebook、Twitter 等),可以在 Firebase 控制台中啟用它們,並根據需要將相應的按鈕添加到您的 Webflow 網站上。

Learn more

此教程應該已經為您提供了在 Webflow 網站上添加 Firebase 認證所需的所有信息。如果您有任何問題或遇到任何困難,請隨時向我們尋求幫助,我們將竭誠為您提供支持。

Share this post