راکت
حل شده

حذف یوزر های اسپم

14 پاسخ

سلام روز بخیر

من یک وب سایت وردپرسی دارم و یک سری یوزر اسپم در سایتم ثبت نام کردن نمی دونم چطور با ایمیل ثبت نام شدن چون فقط از طریق شماره موبایل می تونه کاربر ثبت نام کنه

حدود 4000 تا یوزر هستش و در اسم همشون کلمه RUB مشترک هستش، چطور می تونم همشون رو با هم حذف کنم ؟

ثبت پرسش جدید

پاسخ‌ها

14
فرزاد عامری
فرزاد عامری
@Farzadameri

تخصص: وردپرس

بهترین پاسخ

سلام دوست عزیز ، خوبی ...
میتونید از این مقاله استفاده کنید ، علاوه بر این بهتون پیشنهاد میکنم در فرم ثبت نام و ورود از کپچا استفاده کنید

علیرضا درخشان
علیرضا درخشان
@alirezadra

تخصص: CTO

فقط یک سوال دارم، حدود 4000 تا یوزر فیک این طوری ساخته شده، و نقش مشترک دارن و در بین این ها افراد زیادی هم هستن که در سایت ثبت نام کردن ولی خریدی نداشتن. چطور باید این ها رو تفکیک کرد؟

فرزاد عامری
فرزاد عامری
@Farzadameri

تخصص: وردپرس

متاسفانه همچین قابلیتی ندیدم پیشنهاد میکنم یه خروجی از کاربران که مشتری هستند بگیرید بعدش اقدام به پاک کردن نقش مورد نظر بکنید .
اگه کاربران اسپم در یک زمان مشخصی مثلا ۲۶ may ثبت نام کردم میتونید با افزونه معرفی شده در مقاله اونها پاک کنید

شاید پاسخ شما همین‌جا باشد

مهدی سمیعیان
مهدی سمیعیان
@mahdidev

تخصص: برنامه نویس وب/اندروید

از طریق phpmyadmin یا نرم افزارهای مشابه به دیتابیس متصل شو. یک کوئری بنویس که لیست یوزرهایی که RUB رو دارند برگردونه. اگر خروجی مطابق خواسته ات بود. یک کوئری دیگه بنویس با همون شرط و همشون رو پاک کن. البته قبل از حذف حتما از دیتابیس بک اپ بگیر. مثل این کوئری

SELECT * FROM 
users u 
WHERE u.first_name LIKE  '%RUB%';

اگه اوکی بود کوئری پاک کردن رو با همین شرط اجرا کن

DELETE FROM  users u
WHERE u.first_name LIKE  '%RUB%';
علیرضا درخشان
علیرضا درخشان
@alirezadra

تخصص: CTO

بله درسته ممنون از راهنماییتون به این صورت میشه حذف کرد
فقط من به یک مشکل دیگه برخوردم، باید یوزر ها در wp_users قرار داشته باشن ولی این بخش اصلا در دیتابیس من وجود نداره
یک بار وردپرس رو روی یک ساب دایرکتوری نصب کردم و دیتابیس جدیدی براش ساختم و چک کردم خود وردپرس روی بخش wp_users یوزر ها رو ذخیره میکنه ولی الان در جدول های دیتابیس من نیست این بخش

پیشنهادی ندارید که چطور پیداش کنم ؟
چون اصلا در هیچ بخش این دیتابیس انگار وجود نداره، و وقتی هم با کوئری که نوشتید می خواهم پیداشون کنم چند تا نتیجه بیشتر نمایش نمیده ولی حدود 4000 تا هستن این ها

مهدی سمیعیان
مهدی سمیعیان
@mahdidev

تخصص: برنامه نویس وب/اندروید

احتمالا پلاگینی نصب کردید که جدول جدایی ایجاد می‌کنه. بقیه جدول‌هایی که تعداد رکورد بالایی دارند رو چک کنید تا مشخص بشه جدولش کدومه. بعد مشابه کوئری که نوشتم برای جدول مقصد اجرا کنید

مرتضی واعظی
مرتضی واعظی
@MortezaVaezi

تخصص: توسعه دهنده وب

این کد کامل نیست و اشتباهه چون مشخصن برای هر user در جدول users، یکسری metavalue در جدول usermeta وجود داره.
همچنین بر اساس کانفیگ وردپرس میتونه اسم دیتابیس ایشون فرق داشته باشه و کلا پتانسیل اینو داره که دیتابیس user های دوست عزیزمون رو به فنا که هیچی ی چیزی اونورتر بده.

include  ('wp-load.php');
function delete_users_by_username($search) {
    $user_query = new WP_User_Query( array( 'search' => $search ) );
    $users = $user_query->get_results();

    if ( ! empty( $users ) ) {
        foreach ( $users as $user ) {
            wp_delete_user( $user->ID );
        }
    }
}
delete_users_by_username('نام، نام کاربری، یا ایمیل و...');

این کد را در فایلی در پوشه publichtml هاستتون بریزید بعدش در قسمتی که گفتم میتونید نام دلخواهتون رو که اسپم شده بنویسید. بعد از یکبار اجرا این فایل، مشکلتون برطرف شده و میتونید حذفش کنید.
دقت کنید من نوشتم ایمیل و نام کاربری و نام و... ولی اگر از این کد قرار هست در جای دیگه ای استفاده کنید مثلا نگهش دارید که بعدن استفاده کنید، دقت داشته باشید که فقط داده ای میتونه داده مبنا باشه که جز داده های اصلی یک user وردپرس باشه.

موفق باشید.

علیرضا درخشان
علیرضا درخشان
@alirezadra

تخصص: CTO

درود
ممنونم فقط چطور باید اجراش کنم ؟
من در یک فایل با نام smapsd.php قرار دادم قطعه کد رو و کلمه مشترک یوزر های اسپم رو در قسمتی که قرار دادید نوشتم ولی وقتی آدرس فایل رو می نویسم اجرا نمیشه ،‌ آدرس مثل exapmle.com/spamsd.php

مرتضی واعظی
مرتضی واعظی
@MortezaVaezi

تخصص: توسعه دهنده وب

ارور میده که میگید اجرا نمیشه؟ چون قراره فقط ی صفحه خالی ببینید و نتیجه رو باید داخل وردپرس چک کنید.

علیرضا درخشان
علیرضا درخشان
@alirezadra

تخصص: CTO

بله انتظار همین رو داشتم ولی فقط کد ها رو نمایش میده
 تصویر

مرتضی واعظی
مرتضی واعظی
@MortezaVaezi

تخصص: توسعه دهنده وب

فرمت فایل باید php باشه. مطمئن هستید اشتباه نزدید؟
بعد توی پوشه public_html باید بزنید.
اگر نزنید ارور خواهد داد.

علیرضا درخشان
علیرضا درخشان
@alirezadra

تخصص: CTO

بله دوست من ولی اجرا نمی کنه و فقط محتوای فایل رو نمایش میده

مرتضی واعظی
مرتضی واعظی
@MortezaVaezi

تخصص: توسعه دهنده وب

دوست عزیز باید کد php داخل همچین قالبی باشه و الا به این صورت که دیدید به نمایش درمیاد.

<?php 
//  کد شما
?>
علیرضا درخشان
علیرضا درخشان
@alirezadra

تخصص: CTO

آهان
اجرا شد ولی جواب نداد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام