با سلام و عرض ادب و احترام خدمت همه شما دوستان عزیز و ارجمند همراه رجیران.در ادامه آموزش های وردپرس میپردازیم به یکی از خطاهای وردپرس که بسیار پیش می آید و در مورد ان بسیار صحبت میشود.دوستان در این آموزش روش رفع خطای “کادر رمز خالیست” در وردپرس را بررسی میکنیم.پس دوستان عزیز حتما تا انتها با من همراه باشید
روش رفع خطای “کادر رمز خالیست” در وردپرس

دوستان عزیز رجیران من یکی از مشکلاتی که ممکن است تا امروز در زمان ورود به ناحیه مدیریت وب سایت وردپرسی خود با آن مواجه شده باشید این است که هر چند فیلد رمز عبور در هنگام ورود شما خالی نیست و رمز عبور خیلی واضح در فیلد رمز مشاهده میشود و شما ان را وارد کرده اید ولی زمانی که روی دکمه ورود کلیک میکنید با خطای کادر رمز خالی است یا در نسخه ی انگلیسی با خطای The password field is empty مواجه میشوید که اصلا منطقی نیست و بسیار اعصاب خرد کن است. گاهی پیش می آید که در تلاش های دوم یا سوم برای ورود به ناحیه مدیریت، مشکل خود به خود برطرف میشود ولی گاهی هم وردپرس کوتاه نمی آید و آنقدر این خطا را به شما نشان میدهد تا حسابی اعصابتان بهم بریزد و خسته شوید و شما باید توجه کنید که این مشکل عموما فقط در مروگر گوگل کروم پیش می آید و در واقع هم دلیل ساده ای دارد و هم راه حل هایی ساده که امروز به معرفی آنها خواهیم پرداخت.پس نگران هیچ چیز نباشید و فقط با من همراه باشید

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

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

خب دوستان برای رفع این مشکل در وردپرس ۴ راه وجود دارد که همه ان ها را برای شما باز گو میکنم.این ۴ روش به صورت زیر است:

۱٫ روش اول : صرف نظر از استفاده از مرورگر کروم
اولین و راحت ترین و خنده دار ترین روش همین روش است.دوستان برای رهایی از این مشکل کلا از استفاده از کروم صرف نظر کنید و اصلا از ان استفاده نکنید.خب این روش اول است.شما میتوانید از مرورگر های دیگر برای کار های وب سایت وردپرسی خود استفاده کنید.پس راحتترین راه همین است که اصلا گوگل کروم را فراموش کنید.آیا میتوانید؟ در صورتی که پاسخ شما مثبت است پس همین راه اول برای شما بهترین راه خواهد بود ولی اگر پاسخ شما منفی است راه دوم را شروع کنید

۲٫ روش دوم : یک فاصله زیاد و کم کنید
خب شما روش اول را قبول نکردید و رسیدیم به روش دوم دوستان.اگر برای روش های اصولی حال و حوصله ندارید و هیچ علاقه ای هم به دست کاری کد ندارید، این روش ساده ترین و دم دست ترین روش برای شماست البته بعد از روش اول.اما خب در این روش باید چه کار کنید؟ خب پاسخ این سوال بسیار ساده است هر بار که میخواهید وارد ناحیه مدیریت وردپرس شوید، خیلی ساده یک space به پایان رمز ورود به وب سایت وردپرسی خود اضافه کرده و سپس ان را حذف کنید. به همین سادگی و راحتی و خوشمزگی! حالا اگر روی دکمه ورود کلیک کنید، بدون مشکل وارد ناحیه مدیریت وردپرس خواهید شد و دیگر این ارور را دریافت نخواهید کرد.خوب بود؟ بله خوب بود اما بدیهی است که این راه حل اصولی نیست و عملا فقط صورت مسئله را پاک میکند. بنابراین در صورتی که به دنبال شیوه های صحیح رفع مشکل هستید، میتوانید از دو روشی که در ادامه می آید استفاده کنید ولی اگر نیستید همین روش برای شما بهترین است

۳٫ روش سوم : جاوا اسکریپت ها را تغییر دهید
برای روش سوم نیز کمی باید با کد های وب سایت وردپرسی خود سرگرم شوید و اصلا کار سختی در پیش ندارید.در این حالت شما باید یک قطعه کد را تغییر دهید.این قطعه کد جاوا اسکریپت، یعنی wp_attempt_focus فقط وقتی کار میکند که خطایی در فرم وجود نداشته باشد و در غیر اینصورت کار نمیکند. حالا اگر ما بیاییم و کاری کنیم که این کد باور کند که خطایی در فرم پیش آمده، باعث میشویم که دیگر از دست کارهای مزاحمت آمیز بردارد و این قدر ما را اذیت نکند و به درستی همه چیز را پشت سر بگذارد! برای انجام این کار تنها کافی است کد زیر را به فایل function.php یا افزونه site-specific که قبلا با هم ساخته بودیم اضافه کرده و تغییرات را ذخیره کنید:

add_action(“login_form”, “kill_wp_attempt_focus”);
function kill_wp_attempt_focus() {
global $error;
$error = TRUE;
}

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

۴٫ روش چهارم : به شکل اصولی wp_attempt_focus را غیر فعال کنید
خب روش چهارم و نهایی را بررسی میکنیم و از روش های غیر اصولی خارج شده و یک روش اصولی را برای شما دوستان بازگو میکنیم که تنها از این روش در حالت حرفه ای میتوانید استفاده کنید.در این شیوه قرار است که به صورت کاملا اصولی wp_attempt_focus را غیر فعال کنیم. برای انجام این کار کافی است که کد زیر را به فایل functions.php قالب وردپرس وب سایت وردپرسی خود و یا طبق معمول به افزونه site-specific سایت وردپرسی خود اضافه کنید :

add_action(“login_form”, “kill_wp_attempt_focus_start”);
function kill_wp_attempt_focus_start() {
ob_start(“kill_wp_attempt_focus_replace”);
}

function kill_wp_attempt_focus_replace($html) {
return preg_replace(“/d.value = ”;/”, “”, $html);
}

add_action(“login_footer”, “kill_wp_attempt_focus_end”);
function kill_wp_attempt_focus_end() {
ob_end_flush();
}

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

راستی فراموش نکنید، همیشه پیش از اعمال این نوع تغییرات، از فایلی که میخواهید آن را ویرایش کنید یک نسخه پشتیبان تهیه کنید چون بسیار مهم است و در صورت یک سهل انگاری کوچک ممکن است مشکلات عدیده ای برای وب سایت وردپرسی شما به وجود بیاید پس حتما نسخه پشتیبان را مد نظر قرار دهید. همچنین سعی کنید که این نوع تغییرات را همیشه از پنل مدیریت هاست یا از طریق FTP انجام دهید تا اگر احیانا و به هر دلیل دسترسی شما به ناحیه مدیریت وردپرس قطع شد، در بازگرداندن تغییرات به حالت قبلی مشکلی نداشته باشید.پس این نکات ضروری را مورد استفاده قرار دهید

خب این آموزش وردپرس هم به پایان رسید.خیلی ممنون از شما که باز هم تا انتها با من همراه بودید.حتما در آموزش های دیگر هم با من همراه باشید چون موارد بسیار خوب و حرفه ای برای شما اماده کرده ایم.البته در صورت داشتن نظر و انتقاد و پیشنهاد ان را در بخش نظرات با ما در میان بگذارید چون بسیار مشتاق شنیدن صحبت های شما هستیم.

روز و روزگار بر شما خوش دوستان