مخفی کردن نام کاربری در وردپرس
مخفی کردن نام کاربری در وردپرس و امنیت وردپرس یکی از فاکتورهای مهم برای پویا بودن سایت و بروز ماندن سیستم محتوای وردپرس هست . اگر با وردپرس به صورت حرفه ای کار کرده باشید، حتما میدانید که وردپرس یک سیستم مدیریت محتوای متن باز هست و این گزینه مزایای زیادی از جمله قابلیت توسعه پذیری بالا و وجود افزونه های وردپرسی بسیار هست که توسط تیمی از توسعه دهندگان وردپرس ایجاد و منتشر میشود
اما متن باز بودن به معنای امنیت 100 درصد نیست، گاهی هکرها میتوانند با بررسی تمام کدهایی که به صورت عمومی قابل دیدن هست، از وجود رخنه هایی مطلع شوند که اصطلاحا باگ امنیتی وردپرس نامیده میشود
برخی از باگهای وردپرس که مربوط به کدنویسی هسته وردپرس و یا افزونه های وردپرسی هست، مستقیما میبایست توسط تیم برنامه نویسان رفع و نسخه بروز آن منتشر شود
اما از باگهایی که خود صاحبان سایت میتوانند در بروز آن نقش داشته باشند میتوان به موارد زیر اشاره کرد:
-
استفاده از نام کاربری های ساده
-
استفاده از رمز عبورهای ضعیف و غیر مطمئن
-
عدم آپدیت به موقع هسته وردپرس و افزونه های نصب شده
-
عدم استفاده از کپچا و بستن نفوذ رباتها
-
عدم ایجاد بکاپ و یا تاخیر در بکاپ گرفتن از سایت یا دیتابیس
-
عدم بررسی امنیتی به موقع
-
در معرض نمایش گذاشتن نام کاربران سایت
موردی که اختصاصا در این مقاله درباره آن صحبت خواهیم کرد مربوط به مخفی کردن نام کاربری در وردپرس هست. در صفحه لاگین وردپرس به صورت پیشفرض اگر در قسمت نام کاربری کلمه ای وارد کنیم و آن کاربر وجود نداشته باشد، پیغامی نمایش میدهد که این کاربر در سایت وجود ندارد
و همچنین اگر نام کاربری را رندم بنویسیم و رمز اشتباه بزنیم، چنانچه آن کاربر وجود داشته باشد و رمز اشتباه باشد پیغام زیر نمایش داده میشود
نمایش پیغام دلخواه موقع ورود نام کاربری و رمز عبور اشتباه در وردپرس
جهت افزایش امنیت کاربران وردپرس و مخفی کردن نام کاربری در وردپرس میتوانید کد زیر را در فایل functions.php در قالب خود قرار دهید. البته بهتر هست که برای قالب خودتان یک child-theme ایجاد کنید تا هنگام بروز رسانی قالب، برای کدهایی که به صورت سفارشی اضافه کرده اید، مشکلی به وجود نیاید
function my_custom_error_messages_chaharsoo() { global $errors; $err_codes = $errors->get_error_codes(); // Invalid username. if ( in_array( 'invalid_username', $err_codes ) ) { $error = '<strong>ERROR</strong>: Invalid username or password'; } // Incorrect password. if ( in_array( 'incorrect_password', $err_codes ) ) { $error = '<strong>ERROR</strong>: Invalid username or password'; } return $error; } add_filter( 'login_errors', 'my_custom_error_messages_chaharsoo');
بعد از افزودن کد بالا، چنانچه نام کاربری وجود نداشت پیغام زیر نمایش داده خواهد شد و دیگر امکان نخواهد داشت که کسی متوجه شود کاربر در این سایت وجود دارد یا نه !
همچنین میتوانید برای زمانهایی که نام کاربری یا رمز ورود اشتباه وارد می شود پیغام دلخواه خود را بنویسید، برای اینکار کافیست که متن دلخواه خود را جایگزین نوشته Invalid username or password
کنید.