امنیت وردپرس یکی از مهمترین دغدغههای مدیران سایت های وردپرسی است. یکی از روشهای مؤثر برای افزایش امنیت سایت، تنظیم خروج خودکار کاربران در وردپرس پس از مدتزمان معین عدم فعالیت کاربر است. این کار میتواند به کاهش احتمال دسترسی غیرمجاز به حسابهای کاربری کمک کند. در این آموزش، به بررسی دو روش برای پیادهسازی این قابلیت در وردپرس خواهیم پرداخت.پس در ادامه همراه ما باشید.
خروج خودکار کاربران با استفاده از افزونه
وردپرس یک اکوسیستم گسترده از افزونههایی را ارائه میدهد که میتوانند کارهای مختلفی را بهسادگی بر اساس نیاز ما انجام دهند. برای خروج خودکار کاربران در وردپرس نیز افزونههای زیادی وجود دارد که از میان آنها میتوان به Inactive Logout اشاره کرد. در ادامه، نحوه استفاده از این افزونه را توضیح میدهیم.
قابلیتها و امکانات افزونه Inactive Logout
افزونه Inactive Logout امکانات متنوعی را برای مدیریت خروج خودکار کاربران فراهم میکند:
- تنظیم مدتزمان عدم فعالیت: میتوانید مدتزمان مشخصی را برای خروج خودکار کاربران تنظیم کنید.
- پیام شخصیسازیشده: امکان نمایش یک پیام به کاربران پیش از خروج خودکار.
- تعریف نقشهای کاربری خاص: قابلیت تعیین خروج خودکار برای نقشهای کاربری خاص (مانند مدیر، نویسنده، یا مشترک).
- پشتیبانی از چندزبانه بودن: این افزونه با افزونههای چندزبانه سازگار است و پیامها را به زبان مناسب نمایش میدهد.
- بازگشت به صفحه ورود: پس از خروج، کاربران میتوانند به صفحه ورود هدایت شوند.
- امنیت بالا: کمک به بهبود امنیت سایت با بستن دسترسی کاربران غیرفعال.
- رابط کاربری ساده: محیطی کاربرپسند که تنظیمات را برای کاربران آسان میکند.
آیا افزونه کاربران را از سایت حذف میکند؟
افزونه Inactive Logout نشست کاربران (Session) را خاتمه میدهد، نه اینکه اطلاعات کاربری آنها را از دیتابیس وردپرس حذف کند. این افزونه طراحی شده تا امنیت را با خروج خودکار کاربران غیرفعال افزایش دهد، اما تغییری در اطلاعات کاربران سایت ایجاد نمیکند.
عملکرد افزونه به این صورت است که با پایان مدتزمان تعیینشده برای عدم فعالیت کاربر، او را از حساب کاربریاش خارج میکند و در مرحله بعد پس از خاتمه دادن به نشست فعلی، او را برای وارد شدن مجدد به صفحه ورود سایت هدایت می کند.
مراحل نصب و تنظیم افزونه Inactive Logout
برای استفاده از این افزونه کافی است به پیشخوان وردپرس بروید و در مسیر افزونه ها > افزودن افزونه جدید،عبارت Inactive Logout را جستجو کنید و سپس این افزونه را نصب نمایید.اگر آشنایی با نحوه نصب افزونه ها ندارید می توانید آموزش ما را در خصوص نصب افزونه در وردپرس مشاهده کنید.
در مرحله بعد،پس از نصب و فعالسازی افزونه،به مسیر “تنظیمات > Inactive Logout” بروید.
در صفحه جدید می توانید تنظیمات این افزونه را سفارشی سازی کنید.به عنوان مثال می توانید محض کنید که پس از چه مدت زمانی کاربر از سایت خارج شود و یا این که حین خارج شدن چه پیغامی را به کاربران نمایش بدهد.
خروج خودکار کاربران بدون استفاده از افزونه
اگر به نصب افزونههای اضافی در سایت خود علاقه ندارید یا ترجیح میدهید از راهحلهای ساده تر و سبک تر استفاده کنید، میتوانید از کدهای سفارشی در فایل functions.php قالب خود استفاده کنید.
برای این کار ابتدا به پیشخوان وردپرس بروید و مراحل زیر را انجام دهید:
- به بخش “نمایش” > “ویرایشگر پرونده پوسته” بروید.
- فایل functions.php را باز کنید.
- کد زیر را در انتهای فایل قرار دهید:
function auto_logout_users() {
if (is_user_logged_in()) {
$inactive_time = 600; // مدتزمان عدم فعالیت (ثانیه) - در اینجا ۱۰ دقیقه
$current_time = current_time('timestamp');
$last_activity = isset($_SESSION['last_activity']) ? $_SESSION['last_activity'] : 0;
if ($last_activity && ($current_time - $last_activity > $inactive_time)) {
wp_logout();
wp_redirect(home_url()); // هدایت به صفحه اصلی پس از خروج
exit;
}
$_SESSION['last_activity'] = $current_time;
}
}
add_action('init', 'auto_logout_users');
function start_session_on_init() {
if (!session_id()) {
session_start();
}
}
add_action('init', 'start_session_on_init', 1);
توجه : برای جلوگیری از بروز مشکل فنی در سایت، قبل از اعمال تغییرات از فایل functions.php نسخه پشتیبان تهیه کنید.
جمعبندی
خروج خودکار کاربران در وردپرس میتواند تأثیر زیادی بر افزایش امنیت سایت داشته باشد. با استفاده از افزونههایی مانند Inactive Logout، میتوانید این قابلیت را بهسادگی فعال کنید. همچنین،در این آموزش با استفاده از کدنویسی نیز به شما آموزش دادیم که چگونه این مسئله را مدیریت کنید. هر دو روش به شما کمک می کند تا امنیت سایت خود را بیشتر کنید و از دسترسی غیرمجاز به حسابهای کاربری جلوگیری کنید.