🔹 كيف يمكن أن يساعدنا Google Drive؟
✅ تخزين بيانات المستخدمين: يمكنك حفظ بيانات تسجيل الدخول في ملف Google Sheets بدلاً من قاعدة بيانات MySQL.
✅ استخدام Google Drive كخادم خارجي: يمكن تخزين ملفات أو بيانات تسجيل الدخول هناك، ثم استرجاعها عند الحاجة.
✅ التحقق من المستخدمين عبر Google OAuth: يمكن استخدام تسجيل الدخول عبر Google بدلاً من نظام تسجيل الدخول التقليدي.
🔹 1. استخدام Google Sheets كقاعدة بيانات
إذا كنت تريد تخزين بيانات تسجيل الدخول في Google Sheets بدلاً من MySQL، يمكنك استخدام Google Sheets API مع Flask.
📌 خطوات العملية:
1️⃣ إنشاء ملف Google Sheets لحفظ بيانات المستخدمين.
2️⃣ استخدام Google Sheets API للوصول إلى البيانات من Flask.
3️⃣ إرسال طلبات من ووردبريس إلى Flask للتحقق من تسجيل الدخول.
🔹 كود Flask للوصول إلى Google Sheets
python
import gspread
from oauth2client.service_account import ServiceAccountCredentials
# إعداد الاتصال بـ Google Sheets
scope = ["https://spreadsheets.google.com/feeds", "https://www.googleapis.com/auth/drive"]
creds = ServiceAccountCredentials.from_json_keyfile_name("credentials.json", scope)
client = gspread.authorize(creds)
# فتح ملف Google Sheets
sheet = client.open("UserDatabase").sheet1
# التحقق من تسجيل الدخول
def check_login(email, password):
users = sheet.get_all_records()
for user in users:
if user["email"] == email and user["password"] == password:
return True
return False
🔹 2. استخدام تسجيل الدخول عبر Google OAuth
إذا كنت تريد السماح للمستخدمين بتسجيل الدخول باستخدام حساب Google، يمكنك استخدام Google OAuth داخل ووردبريس وFlask.
📌 كيف يعمل؟
✅ المستخدم يضغط على زر “تسجيل الدخول عبر Google”.
✅ يتم توجيهه إلى صفحة تسجيل الدخول الخاصة بـ Google.
✅ بعد تسجيل الدخول، يحصل على رمز (Token) يؤكد هويته.
✅ Flask يتحقق من صحة الرمز ويرسل الرد إلى ووردبريس.
🔹 كود Flask لتسجيل الدخول عبر Google OAuth
python
from flask import Flask, redirect, request
from authlib.integrations.flask_client import OAuth
app = Flask(__name__)
app.secret_key = "your_secret_key"
oauth = OAuth(app)
google = oauth.register(
name="google",
client_id="YOUR_GOOGLE_CLIENT_ID",
client_secret="YOUR_GOOGLE_CLIENT_SECRET",
access_token_url="https://accounts.google.com/o/oauth2/token",
authorize_url="https://accounts.google.com/o/oauth2/auth",
client_kwargs={"scope": "openid email profile"},
)
@app.route("/login")
def login():
return google.authorize_redirect(redirect_uri="http://localhost:5000/auth")
@app.route("/auth")
def auth():
token = google.authorize_access_token()
user_info = google.get("userinfo").json()
return f"مرحبًا {user_info['name']}! تم تسجيل الدخول بنجاح."
if __name__ == "__main__":
app.run(debug=True)
🔹 3. هل هذا الحل يناسبك؟
🔹 إذا كنت تريد تخزين بيانات المستخدمين في Google Sheets، يمكننا تحسين ذلك أكثر.
🔹 إذا كنت تريد تسجيل الدخول عبر Google OAuth، يمكننا دمجه مع ووردبريس.