⭐️خداحافظی با کامنت های اسپم وردپرس، بدون نصب افزونه

بارها پیش آمده بود که بعد از لاگین به پیشخوان وردپرس، با عددهای عجیب و غریب کامنت ها مواجه می شدم و می دیدم که همه اینها با اکانت های ایمیل رندوم و با کلمات انگلیسی و لینک به پست ها و یا محصولات خارجی بود. حذف کردن این کامنت ها قسمتی از کار روزانه من شده بود و در هر بار لاگین من به پیشخوان تکرار می شد.
البته مشکل فقط همین نبود، هر بار که یک کامنت فیک ثبت می شد، یک ایمیل به ایمیل ادمین وب سایت ارسال می شد که چون همین ایمیل رو بر روی گوشی ست کرده بودم روزانه دهها و صدها نوتیفکیشن جیمیل برای من ارسال می شد که وقت و بی وقت با روح و روان آدم بازی می کرد.
از طرفی وب سایت من فروشگاه آنلاین بود و چون هاست اشتراکی بود محدودیت ارسال ایمیل در ساعت داشتم و این کامنت های فیک بخشی از تعداد ایمیل های ارسالی رو مصرف می-کرد .
وقتی یکی از دوستانم این مشکلات را دید پیشنهاد خوبی داد که در ادامه این پست، این روش رفع مشکل اسپم رو برای شما هم به شکل یک پست منتشر کردم تا شما هم از شر کامنت های اسپم خلاص شوید.
کامنت های اسپم وردپرس چی هستند و از کجا می آیند؟
به عنوان مدیر یا ادمین یک وبسایت وردپرسی، ممکن است با گذشت زمان متوجه شوید که بخش دیدگاهها یا همان کامنتها در پیشخوان وردپرس با حجم زیادی از نظرات بی ربط، تکراری یا تبلیغاتی پر شده است و حتما از دیدن عدد کامنت ها تعجب کردید.
این نوع دیدگاهها که معمولا ا توسط رباتها به صورت خودکار ارسال میشوند، به عنوان کامنتهای اسپم شناخته میشوند و میتوانند بهسرعت افزایش یابند.
در برخی موارد، تنها طی چند روز تعداد این کامنتهای ناخواسته ممکن است به بیش از 100 مورد برسد و حذف آنها به یک فرآیند وقتگیر و فرسایشی تبدیل شود.
ادامه این روند نه تنها باعث شلوغی پیشخوان و کاهش کارایی مدیریت سایت میشود، بلکه ممکن است اعتبار وبسایت شما را نیز نزد کاربران و موتورهای جستجو خدشهدار کند.
به همین دلیل، شناسایی و مقابله با این نوع اسپمها، آن هم بدون استفاده از افزونههای سنگین یا راهکارهای وابسته به سرویسهای خارجی، از اهمیت ویژهای برخوردار است.
در ادامه پست، راهکارهایی اصولی و سبک برای کنترل کامل این مشکل ارائه میدهیم تا بدون کاهش سرعت یا افزایش مصرف منابع هاست از جمله رم و سی پی یو ، این کامنت ها دریافت نشود و تجربه کاربری وبسایت شما حفظ شود.
در صورتی که هنور وب سایت وردپرس خود را راه اندازی نکردید و نیاز به هاست وردپرس دارید می توانید در صفحه هاست وردپرس، لیست جزئیات هاست وردپرس پارس وب سرور را مشاهده کنید. انتقال وب سایت از سایر شرکت ها به هاستینگ پارس وب سرور رایگان است . (راهنمای انتقال هاست از سایر شرکت ها)
برای جلوگیری از دریافت کامنت اسپم چه کاری باید انجام داد ؟
در وردپرس، رباتهای اسپمر معمولا ا از طریق ارسال مستقیم HTTP POST به endpoint دیدگاهها (/wp-comments-post.php) اقدام به تزریق محتوای ناخواسته و گذاشتن کامنت میکنند.
این باتها اغلب از لیستهای هدف، proxied IPs و تکنیکهای bypass کپچا استفاده میکنند. این نوع اسپم نهتنها منجر به آلودگی محتوای سایت میشود بلکه میتواند منابع هاست مخصوصا سی پی یو را درگیر کند و نرخ خروج کاربران را افزایش دهد. مدیریت صحیح این تهدید، بدون تکیه بر پلاگینهای آماده، نیازمند تنظیمات دقیق در سطح وردپرس، htaccess و لایههای امنیتی مثل WAF است.
نصب افزونه برای محافظت از فرم کامنت ها
با افزایش تعداد کامنتهای اسپم در وبسایت، بسیاری از ادمین وب سایتها به سراغ نصب پلاگین هایی مثل Akismet یا Antispam Bee میروند.
این پلاگین ها اگر چه در فیلتر کردن دیدگاههای مزاحم مفید هستند، اما وابستگی به افزونه ، افزایش بار اضافی روی منابع هاست و کاهش سرعت لود سایت میتواند از معایب جدی نصب این طور افزونه ها باشد.
در برخی موارد، استفاده از چند افزونه همزمان برای مقابله با اسپم نه تنها مشکل را حل نمیکند، بلکه باعث اختلال در عملکرد فرم دیدگاهها یا حتی از دست رفتن نظرات واقعی کاربران میشود که این مورد را هم باید در نظر داشت.
با توجه به همه این توضیحات ، بهترین رویکرد برای مقابله با این مشکل، استفاده از تنظیمات وردپرس و بدون افزونه است که راهکارهایی که هم کنترل دقیقتری در اختیار ادمین سایت قرار میدهند و هم از نظر فنی سبکتر و قابل اطمینانتر هستند.
با انجام صحیح این روشها میتوان برای همیشه از شر کامنتهای اسپم خلاص شد، بدون اینکه نیاز به منابع اضافی یا افزونههای متعدد باشد. در ادامه، به بررسی این روشها و نحوه پیادهسازی آنها در وردپرس خواهیم پرداخت.
روش هایی برای کاهش دریافت کامنت های اسپم در وب سایت های وردپرسی
- بستن کامنتها برای مطالب قدیمی
با تنظیم بستن خودکار دیدگاهها برای مطالبی که از انتشار آنها بیش از X روز گذشته، میتوان از ارسال اسپم توسط رباتها در پستهای آرشیوی جلوگیری کرد. البته ابن روش برای پست های قدیمی سازگار است و اکثر کامنت های اسپم هم برای پست های جدید است که منتشر می شوند. - فعالسازی تایید دستی دیدگاهها
با فعالکردن گزینه دیدگاهها باید به صورت دستی تایید شوند ، میتوانیم مانع از نمایش عمومی کامنتهای اسپم شویم. طبیعتا اگر کامنت های دستی تایید نشوند، پست های وب سایت با لیست بزرگی از کامنت های اسپم برای کاربر نمایش داده می شود. - افزودن فیلد مخفی honeypot به فرم دیدگاه
افزودن یک فیلد مخفی به فرم کامنت که فقط توسط رباتها پر میشود، یکی از راهکارهای مؤثر برای مسدودسازی خودکار اسپمهاست. در این روش که در این پست به صورت کامل به آن می پردازیم، یک فیلد مخفی به فرم کامنت وردپرس اضافه می شود. چون این فیلد برای کاربران و بازدید کنندگان وب سایت مخفی است پر نمی شود اما ربات ها نمی توانند تشخیص دهند که نباید این فیلد پر شود و در نتیجه کامنت هایی که توسط ربات ها ارسال می شود اصلا ثبت نمی شود . - محدودسازی فایل wp-comments-post.php از طریق htaccess
با ایجاد محدودیت دسترسی به فایل مسئول پردازش دیدگاهها، میتوان از ارسال مستقیم کامنت توسط اسکریپتهای ربات جلوگیری کرد. - افزودن تاخیر جاوااسکریپتی به فرم ارسال دیدگاه
افزایش تاخیر چند ثانیهای برای فعالشدن دکمه ارسال، باعث فیلتر شدن رباتهایی میشود که بدون اجرای جاوااسکریپت اقدام به ارسال میکنند. - غیرفعالسازی کامل کامنتها در صفحات یا نوع پستهای خاص
اگر کامنتها برای بخشی از سایت ضرورتی ندارند، میتوان آنها را بهصورت کامل از طریق functions.php غیرفعال کرد. - استفاده از لیست کلمات کلیدی ممنوع
میتوانید لیستی از کلمات یا IPهای مشکوک تهیه کرده و با استفاده از تنظیمات داخلی وردپرس، ارسال این نوع کامنتها را مسدود کنید.
کد فانکشن برای اضافه کردن فیلد honypot بدون نیاز به نصب افزونه
در ادامه این کد را به انتهای فایل functions.php مربوط به قالب اضافه می کنیم. اگر وب سایت شما پوسته چایلد یا همان چایلد تم دارد بهتر است به فایل functions آن اضافه شود.
حتما همیشه قبل از هر تغییر و بروز رسانی فول بک آپ تهیه و دانلود کنید . این مورد بسیار مهم می باشد و در صورتی که به هر دلیل وب سایت به هم ریخت و یا کد به اشتباه وارد شد و یا تداخلی وجود داشت امکان بازگشت به مرحله قبل وجود داشته بشد.
در صورتی که وب سایت دمو دارید ابتدا روی وب سایت دمو خود تست کنید و سپس بر روی وب سایت اصلی خود اضافه کنید و اگر وب سایت فروشگاهی دارید و قصد استفاده از این کد را دارید حتما در ساعات خلوت که ترافیک سایت پایین است ، این کار را انجام دهید.
همیشه جوانب احتیاط را رعایت کنید تا مشکلی برای وب سایت شما ایجاد نشود.
برای ویرایش فایل functions.php باید دسترسی سی پنل و یا اگر از شرکت دیگری هاست دارید که دایرکت ادمین است باید دسترسی دایرکت ادمین داشته باشد.
برای اضافه کردن کد وارد فولدر wp-content/wp-themes می شویم. اگر پوسته چایلد داشته باشیم و فعال باشد وارد ان فولدر می شویم و فایل functions.php را باز می کنیم و کد زیر را به انتهای فایل اضافه و ذخیره می کنیم.
با این کار دیگر هیچ رباتی نمی تواند کامنت اسپمی از طریق فرم کامنت های پست ها برای ما ارسال کند. استفاده و اضافه کردن این کد نیاز به کمی دانش فنی دارد، در صورت نیاز به اضافه کردن این کد از یک برنامه نویس و یا وردپرس کار هم می توانید کمک بگیرید.(برای دانلود کد به صورت فایل زیپ کلیک کنید)
اگر از این کد استفاده کردید و نتیجه خوبی گرفتید در قسمت نظرات با ما مطرح کنید.
از اینکه با این پست پارس وب سرور با ما همراه بودید متشکریم.
سلام من این کد رو به وردپرس اضافه کردم و دیگه کامنت اسپم قطع شد خواستم از پارس وب سرور تشکر کنم.
از اینکه این کد برای شما مفید بود خوشحالیم.