حذف یوزر های اسپم در وردپرس با استفاده از SQL در دیتابیس – مصطفی علاالدین
برنامه نویسی

حذف اسپم‌های وردپرس از دیتابیس فقط با یک کوئری SQL

نویسنده: مصطفی علاءالدین 19 مرداد 1404 218 بازدید
حذف اسپم‌های وردپرس از دیتابیس فقط با یک کوئری SQL

آموزش حذف اسپم و کاربران فیک در وردپرس با SQL

وجود اسپم‌ها و کاربران فیک در وردپرس می‌تواند امنیت سایت را کاهش داده و باعث افزایش فشار روی دیتابیس شود. در این آموزش، روش‌های شناسایی و حذف کاربران اسپم را با استفاده از کوئری‌های SQL بررسی می‌کنیم. این روش‌ها به شما کمک می‌کند بدون نیاز به پلاگین اضافی، مستقیماً از دیتابیس کاربران فیک را شناسایی و حذف کنید.

۱. شناسایی کاربران با ایمیل‌های رایج اسپم

بسیاری از اسپمرها از ایمیل‌های رایج مانند Gmail، Yahoo و Outlook برای ثبت‌نام استفاده می‌کنند. با کوئری زیر می‌توانید آن‌ها را شناسایی کنید:


SELECT * 
FROM `wp_users`
WHERE
(
    (`user_email` LIKE '%@gmail.com' 
    OR `user_email` LIKE '%@yahoo.com' 
    OR `user_email` LIKE '%@outlook.com')
    AND `user_login` NOT LIKE 'www.%'
    AND `user_nicename` NOT LIKE 'www.%'
)
OR
(
    `user_nicename` LIKE '09%'
    AND `user_login` NOT LIKE 'www.%'
    AND `user_nicename` NOT LIKE 'www.%'
);
            

۲. شناسایی اسپم‌ها بر اساس الگوی نام کاربری

اگر متوجه شدید اسپمرها از یک الگوی خاص (مثلاً عبارت blogspot) در نام کاربری استفاده می‌کنند، می‌توانید با کوئری زیر همه آن‌ها را پیدا کنید:


SELECT * 
FROM `wp_users` 
WHERE `user_login` LIKE '%blogspot%';
            

۳. پیدا کردن متادیتاهای یتیم (Orphaned Metadata)

گاهی اوقات متای کاربران در جدول wp_usermeta باقی می‌ماند حتی اگر کاربر اصلی حذف شده باشد. این داده‌های یتیم می‌توانند باعث سنگین شدن دیتابیس شوند و سرعت سایت را کاهش دهند:


SELECT um.* 
FROM wp_usermeta um
LEFT JOIN wp_users u ON um.user_id = u.ID
WHERE u.ID IS NULL;
            

۴. حذف متادیتاهای یتیم

پس از شناسایی داده‌های یتیم، می‌توانید آن‌ها را با کوئری زیر پاک کنید تا فضای دیتابیس بهینه شود:


DELETE um 
FROM wp_usermeta um
LEFT JOIN wp_users u ON um.user_id = u.ID
WHERE u.ID IS NULL;
            

۵. جلوگیری از ثبت‌نام اسپم در آینده

برای کاهش ورود اسپم به سایت، بهتر است از روش‌های پیشگیرانه استفاده کنید. چند راهکار مؤثر عبارتند از:

  • استفاده از reCAPTCHA گوگل در فرم ثبت‌نام و ورود.
  • فعال‌سازی تأیید ایمیل برای کاربران جدید.
  • محدود کردن ثبت‌نام با دامنه‌های ایمیل خاص یا ایمیل‌های موقتی.
  • نظارت منظم بر کاربران جدید و حذف سریع مشکوک‌ها.

۶. نکات امنیتی و بهینه‌سازی دیتابیس

  • قبل از اجرای هر کوئری روی دیتابیس حتماً از کل دیتابیس بکاپ بگیرید تا در صورت بروز مشکل بتوانید بازیابی کنید.
  • ابتدا کوئری‌های SELECT را اجرا کنید تا مطمئن شوید فقط داده‌های مورد نظر انتخاب شده‌اند.
  • پس از حذف کاربران اسپم، دیتابیس را بهینه کنید تا عملکرد سایت بهتر شود.
  • در صورت داشتن تعداد بالای کاربران فیک، بهتر است این فرایند را به صورت دوره‌ای انجام دهید.

با استفاده از این روش‌ها می‌توانید به‌راحتی دیتابیس خود را از اسپم‌ها پاکسازی کرده و سرعت و امنیت سایت وردپرسی‌تان را افزایش دهید. حذف کاربران فیک نه تنها باعث کاهش حجم دیتابیس می‌شود بلکه جلوی ورود فعالیت‌های مخرب و اسپم را نیز می‌گیرد که به تجربه کاربری بهتر و بهبود سئو کمک می‌کند.

مطالب مرتبط
نظرات

دیدگاهتان را بنویسید

پشتیبانی و طراحی سایت مصطفی علاالدین

خدمات طراحی و پشتیبانی سایت ، آموزش برنامه نویسی به صورت خصوصی و گروهی ، مشاوره جهت شروع کسب و کار آنلاین و طراحی CRM و CMS 

تمامی حقوق این وب‌سایت برای آکادمی برنامه نویس مصطفی علاالدین محفوظ است.

ورود | ثبت نام
شماره موبایل یا پست الکترونیک خود را وارد کنید
برگشت
کد تایید را وارد کنید
کد تایید برای شماره موبایل شما ارسال گردید
ارسال مجدد کد تا دیگر
برگشت
رمز عبور را وارد کنید
رمز عبور حساب کاربری خود را وارد کنید
برگشت
رمز عبور را وارد کنید
رمز عبور حساب کاربری خود را وارد کنید
برگشت
درخواست بازیابی رمز عبور
لطفاً پست الکترونیک یا موبایل خود را وارد نمایید
برگشت
کد تایید را وارد کنید
کد تایید برای شماره موبایل شما ارسال گردید
ارسال مجدد کد تا دیگر
ایمیل بازیابی ارسال شد!
لطفاً به صندوق الکترونیکی خود مراجعه کرده و بر روی لینک ارسال شده کلیک نمایید.
تغییر رمز عبور
یک رمز عبور برای اکانت خود تنظیم کنید
تغییر رمز با موفقیت انجام شد