🔹 1. كيف يعمل تسجيل الدخول في ووردبريس؟
ووردبريس يخزن بيانات المستخدمين في جدول wp_users، وأهم الأعمدة التي سنستخدمها:
- user_login → اسم المستخدم.
- user_pass → كلمة المرور (مشفرة).
- user_email → البريد الإلكتروني.
ووردبريس لا يستخدم MD5 فقط، بل يعتمد على خوارزمية خاصة لتشفير كلمات المرور. لذا، يجب أن نستخدم دالة ووردبريس الأصلية للتحقق من كلمة المرور.
🔹 2. الاتصال بقاعدة بيانات ووردبريس في Flask
سنقوم بإنشاء نظام تسجيل الدخول يدويًا باستخدام Python و Flask، مع التعامل مباشرة مع قاعدة بيانات ووردبريس.
📌 الخطوات الأساسية:
✅ الاتصال بقاعدة بيانات ووردبريس يدويًا.
✅ التحقق من كلمة المرور باستخدام خوارزمية ووردبريس.
✅ إرجاع رسالة نجاح أو خطأ بناءً على صحة البيانات.
🔹 3. الكود الأساسي لتسجيل الدخول
python
from flask import Flask, request, jsonify
import pymysql
import hashlib
import phpserialize # مكتبة لفك تشفير بيانات ووردبريس
app = Flask(__name__)
# الاتصال بقاعدة بيانات ووردبريس
db = pymysql.connect(host='localhost', user='root', password='', database='wordpress_db')
cursor = db.cursor()
# دالة للتحقق من كلمة المرور باستخدام خوارزمية ووردبريس
def verify_wp_password(input_password, stored_hash):
# ووردبريس يستخدم خوارزمية خاصة، لذا نحتاج إلى فك التشفير
input_hash = hashlib.md5(input_password.encode()).hexdigest()
return stored_hash == input_hash
# تسجيل الدخول باستخدام قاعدة بيانات ووردبريس
@app.route('/login', methods=['POST'])
def login():
data = request.get_json()
cursor.execute("SELECT user_pass FROM wp_users WHERE user_email=%s", (data['email'],))
user = cursor.fetchone()
if user:
stored_password = user[0] # كلمة المرور المشفرة في ووردبريس
if verify_wp_password(data['password'], stored_password):
return jsonify({"message": "تم تسجيل الدخول بنجاح!"}), 200
else:
return jsonify({"message": "كلمة المرور غير صحيحة"}), 401
else:
return jsonify({"message": "البريد الإلكتروني غير مسجل"}), 404
if __name__ == '__main__':
app.run(debug=True)
🔹 4. كيف يعمل هذا الكود؟
✅ يتصل بقاعدة بيانات ووردبريس مباشرة دون إضافات.
✅ يبحث عن المستخدم في جدول wp_users باستخدام البريد الإلكتروني.
✅ يقارن كلمة المرور المدخلة مع النسخة المشفرة المخزنة في ووردبريس.
✅ إذا كانت صحيحة، يتم تسجيل الدخول بنجاح.
🔹 5. تحسين الأمان
🔹 استخدام wp_hash_password()
بدلاً من MD5، لأن ووردبريس يستخدم خوارزمية أكثر أمانًا. 🔹 إضافة تسجيل دخول عبر الشبكات الاجتماعية مثل Google أو Facebook. 🔹 تفعيل المصادقة الثنائية (2FA) لتعزيز الأمان.
شكرا لك