اگر در حال دیدن خطای ‘jQuery is not defined’ در قسمت مدیریت وردپرس شما (یا جای دیگر)، نگران نباشید – شما تنها نیستید. این یک مشکل رایج است که بسیاری از کاربران وردپرس با آن مواجه می شوند. گفته می شود، زمانی که سایت شما آنطور که انتظار می رود کار نمی کند می تواند ناامید کننده باشد.
ما بیش از یک دهه است که با وردپرس کار می کنیم و در این مدت یاد گرفته ایم که چگونه برخی از رایج ترین خطاهای وردپرس را عیب یابی و برطرف کنیم. این شامل خطای ‘jQuery is not defined’ است.
در این راهنما، در مورد اینکه چرا این خطا رخ می دهد و مهمتر از آن، نحوه رفع آن بحث خواهیم کرد. ما همه چیز را به زبان ساده توضیح میدهیم، بنابراین حتی اگر توسعهدهنده نیستید، میتوانید آن را دنبال کرده و به سرعت مشکل را حل کنید.
چه چیزی باعث خطای ‘jQuery is not defined’ می شود؟
jQuery یک کتابخانه جاوا اسکریپت پرکاربرد در وردپرس است که به اجرای بسیاری از ویژگی های تعاملی کمک می کند. با این حال، گاهی اوقات ممکن است به درستی بارگیری نشود، که می تواند بر عملکرد وب سایت شما تأثیر بگذارد.
این خطا در ابزارهای توسعه دهنده زیر تب Console ظاهر می شود، بنابراین بسیاری از کاربران ممکن است تا زمانی که چیزی در سایتشان خراب نشود متوجه آن نشوند.
اگر خطای ‘jQuery is not defined’ را مشاهده کردید، به این معنی است که وردپرس در بارگذاری صحیح آن مشکل دارد. در طول سالها، ما به کاربران بیشماری کمک کردهایم این مشکل را برطرف کنند و یاد گرفتهایم که معمولاً از چند دلیل رایج ناشی میشود:
- تم ها یا پلاگین های قدیمی: بسیاری از کاربران زمانی با این خطا مواجه می شوند که تم ها یا افزونه های آنها مطابق با آخرین نسخه وردپرس به روز نمی شود. ما اغلب پس از به روز رسانی های اصلی وردپرس این اتفاق را دیده ایم.
- بارگیری نامناسب اسکریپت: jQuery باید قبل از سایر فایل های جاوا اسکریپت بارگذاری شود. اگر اینطور نباشد، اسکریپت هایی که به jQuery وابسته هستند خراب می شوند. این اغلب در صورتی اتفاق میافتد که تمها یا افزونهها بهدرستی کدگذاری نشده باشند تا اسکریپتها را در صف قرار دهند.
- تضادهای جاوا اسکریپت: سایر اسکریپت های در حال اجرا در سایت شما ممکن است با jQuery تضاد داشته باشند، به خصوص اگر به درستی بارگذاری نشده باشند. این تضاد می تواند jQuery را شکسته و باعث ایجاد خطا شود.
- خرابی های CDN: برخی از سایت ها به jQuery متکی هستند که بر روی یک شبکه تحویل محتوا (CDN) میزبانی می شود. اگر CDN در دسترس نباشد یا مسدود شود، سایت نمیتواند jQuery را بارگیری کند و در نتیجه خطا ایجاد میشود.
همه این مشکلات می تواند مانع از اجرای روان جی کوئری شود. اما نگران نباشید – با تجربه خود، میتوانیم شما را از طریق راهحلهای حل مشکل راهنمایی کنیم.
نحوه رفع خطای ‘jQuery is not defined’
راه های مختلفی برای رفع این خطا هنگام مواجه شدن با آن وجود دارد. در زیر مؤثرترین روش هایی است که برای رفع این مشکل استفاده کرده ایم.
توصیه میکنیم این استراتژیها را به ترتیب امتحان کنید، اما اگر میخواهید با استراتژی خاصی شروع کنید، میتوانید از پیوندهای پرش زیر استفاده کنید:
ما هر یک از این روش ها را بررسی می کنیم و سپس منابع اضافی برای عیب یابی خطاهای وردپرس در اختیار شما قرار می دهیم. بیایید به آن برسیم!
1. وردپرس، تم ها و افزونه ها را به روز کنید
نرم افزار قدیمی یکی از رایج ترین دلایل خطای ‘jQuery is not defined’ است. تم ها یا افزونه های قدیمی ممکن است با آخرین نسخه وردپرس سازگار نباشند، که می تواند منجر به تداخل اسکریپت شود. برای رفع این مشکل:
ابتدا مطمئن شوید که هسته وردپرس شما به روز شده است. حرکت به داشبورد » به روز رسانی و در صورت وجود بهروزرسانی، روی «بهروزرسانی به نسخه XXX» کلیک کنید.
برای جزئیات بیشتر به راهنمای کامل ما در مورد به روز رسانی ایمن وردپرس به نسخه جدید مراجعه کنید.
بهروزرسانیهای افزونه وردپرس شما در زیر بهروزرسانی اصلی فهرست میشوند.
میتوانید همه آنها را انتخاب کنید و روی «بهروزرسانی افزونهها» کلیک کنید.
در نهایت، بهروزرسانیهایی را برای قالبهای وردپرس خود خواهید دید.
به سادگی همه آنها را انتخاب کنید و روی “به روز رسانی تم ها” کلیک کنید.
اگر در مورد تغییراتی که در قالب خود ایجاد کرده اید نگران هستید، راهنمای ما در مورد نحوه به روز رسانی پوسته وردپرس خود بدون از دست دادن سفارشی سازی ها را دنبال کنید.
2. بررسی کنید که آیا jQuery به درستی بارگذاری شده است
قبل از بررسی راه حل های پیشرفته تر، مهم است که بررسی کنید آیا جی کوئری واقعاً در سایت شما بارگذاری می شود یا خیر. این مرحله به شما کمک میکند تا تأیید کنید که آیا jQuery در دسترس است و همانطور که باید کار میکند یا خیر.
به سادگی در هر نقطه از سایت وردپرسی خود کلیک راست کرده و “نمایش منبع صفحه” را انتخاب کنید.
نکته: یا می توانید Ctrl + U را در ویندوز یا Cmd + Option + U را فشار دهید در مک برای دسترسی به منبع صفحه.
این به شما HTML خام و جاوا اسکریپت صفحه شما را نشان می دهد.
سپس، Ctrl + F (یا Cmd + F در مک) را فشار دهید تا نوار جستجو ظاهر شود و «jquery.min.js» را تایپ کنید.
اگر جی کوئری به درستی بارگذاری شده باشد، باید ارجاع به آن را در کد مشاهده کنید.
راه دیگر برای جستوجوی jQuery این است که از ابزار Inspect Tool مرورگر خود استفاده کنید. به سادگی به تب “شبکه” بروید و صفحه را دوباره بارگیری کنید.
نکته: در یک دستگاه ویندوزی، می توانید با فشار دادن F12 روی صفحه کلید خود به ابزار Inspect Tool دسترسی پیدا کنید. برای مک، Options + Cmd + I را بزنید.
با تایپ کردن «jquery» در نوار جستجو، فعالیت شبکه را فیلتر کنید. اگر jQuery بارگذاری شده باشد، آن را در اینجا لیست خواهید کرد.
اگر jQuery را در هر یک از روشها بارگذاری نمیکنید، ممکن است مشکل از نحوه قرار گرفتن آن در وردپرس باشد. در مراحل زیر، شما را در رفع این مشکل راهنمایی می کنیم.
3. یک jQuery Fallback اضافه کنید
گاهی اوقات، ممکن است یک اسکریپت در سایت شما با استفاده از یک CDN که دارای مشکلات اتصال است، جی کوئری را بارگیری کند. در این صورت، jQuery بارگیری نمیشود و باعث بروز خطا میشود.
برای رفع مشکل، میتوانید یک jQuery را به سایت وردپرس خود اضافه کنید. این تضمین می کند که jQuery همیشه بارگذاری می شود.
شما باید آن را به قسمت سر سایت خود اضافه کنید تا مطمئن شوید که ابتدا بارگذاری می شود. با این حال، ما ویرایش فایل های تم را به طور مستقیم توصیه نمی کنیم. ما دیدهایم که افراد هنگام بهروزرسانی تم و کدی که اضافه کردهاند، تغییرات خود را از دست میدهند.
بهترین راه برای افزودن کد سفارشی در وردپرس استفاده از افزونه WPCode است. این یک مدیر قطعه کد است که به شما امکان می دهد کد سفارشی را با خیال راحت و بدون شکستن سایت خود اضافه کنید.
ابتدا افزونه WPCode را نصب و فعال کنید. برای جزئیات بیشتر، آموزش نصب افزونه وردپرس را ببینید.
توجه: همچنین یک نسخه رایگان به نام WPCode Lite در دسترس است.
پس از فعال شدن، به قطعه کد » + افزودن قطعه. سپس، روی دکمه «استفاده از قطعه» در زیر «کد سفارشی خود (قطعه جدید) را اضافه کنید» کلیک کنید.
در ویرایشگر کد، نامی مانند ‘jQuery Fallback’ به قطعه خود بدهید.
پس از آن، ‘HTML Snippet’ را برای ‘Code Type’ انتخاب کنید.
سپس کد زیر را در کادر «پیشنمایش کد» قرار دهید:
سپس، به قسمت «درج» بروید.
در اینجا می توانید به WPCode بگویید این کد را کجا بارگذاری کند. مطمئن شوید که "Site Wide Header" را انتخاب کرده اید.
در نهایت، روی دکمه «ذخیره قطعه» در بالا کلیک کنید تا کد سفارشی شما ذخیره شود.
پس از آن، فراموش نکنید که قطعه را با تغییر کلید به «فعال» فعال کنید.
4. رفع مرتبه بارگیری اسکریپت (پیشرفته)
یکی دیگر از دلایل رایج برای خطای 'jQuery is not defined' این است که jQuery بعد از سایر اسکریپت هایی که به آن متکی هستند بارگذاری می شود. اصلاح ترتیب بارگذاری اسکریپت تضمین می کند که jQuery همیشه ابتدا بارگذاری می شود و از درگیری جلوگیری می کند.
اگر می دانید کدام اسکریپت به jQuery متکی است، می توانید با اضافه کردن jQuery به عنوان یک وابستگی، آن اسکریپت را به درستی در صف قرار دهید.
اگر خطای 'jQuery is not defined' ناشی از بارگیری jQuery پس از سایر اسکریپت های وابسته به آن باشد، می توانید ترتیب بارگذاری اسکریپت را با استفاده از WPCode اصلاح کنید.
ابتدا افزونه WPCode را نصب و فعال کنید یا به سراغ نسخه رایگان به نام WPCode Lite بروید.
پس از فعال شدن، به قطعه کد » + افزودن قطعه و روی دکمه "استفاده از قطعه" در زیر "کد سفارشی خود را اضافه کنید (قطعه جدید)" کلیک کنید.
در ویرایشگر کد، نامی مانند «Fix Script Loading Order» به قطعه خود بدهید و «Price PHP» را به عنوان نوع کد خود انتخاب کنید.
سپس، کد زیر را اضافه کنید تا مطمئن شوید که jQuery به عنوان یک وابستگی برای هر اسکریپت سفارشی قرار دارد:
wp_enqueue_script( 'your-script-handle', get_template_directory_uri() . '/js/your-script.js', array( 'jquery' ), null, true );
فراموش نکنید که برای شناسایی اسکریپت، «Your-script-handle» را با یک نام معنادار جایگزین کنید. و '/js/your-script.js' را با نام فایل اسکریپت واقعی در پوشه /js/ تم خود جایگزین کنید.
این array('jquery')
بخشی از کد تضمین می کند که jQuery ابتدا بارگذاری می شود.
هنگامی که کد را اضافه کردید، به گزینه های "درج" بروید و "Site Wide Header" را انتخاب کنید تا مطمئن شوید که اسکریپت در قسمت سمت راست HTML سایت شما بارگذاری شده است.
در نهایت، روی دکمه «ذخیره قطعه» در بالا کلیک کنید تا کد سفارشی شما ذخیره شود.
پس از آن، فراموش نکنید که قطعه را با تغییر کلید به «فعال» فعال کنید.
استفاده از WPCode برای قرار دادن صحیح اسکریپت ها، اطمینان حاصل می کند که jQuery به ترتیب صحیح بارگذاری شده است. اگر ریشه مشکل این بود، باید خطا را برطرف کرد.
5. wp-config.php را برای رفع مشکلات بارگیری jQuery ویرایش کنید
اگر روش های دیگر کار نکردند، آن را ویرایش کنید wp-config.php
فایل می تواند با کنترل نحوه مدیریت بارگذاری اسکریپت توسط وردپرس کمک کند.
اگر مشکلات مربوط به الحاق اسکریپت یا مسیر فایل باعث ایجاد خطای 'jQuery is not defined' باشد، این روش مفید است.
در اینجا نحوه اعمال این روش آمده است:
ابتدا به خود دسترسی داشته باشید wp-config.php
فایل می توانید این کار را با استفاده از یک سرویس گیرنده FTP مانند FileZilla یا با دسترسی به مدیر فایل در کنترل پنل میزبان خود انجام دهید.
این wp-config.php
فایل در دایرکتوری اصلی نصب وردپرس شما قرار دارد (معمولاً در public_html
پوشه).
هنگامی که فایل را پیدا کردید، آن را برای ویرایش باز کنید و کد زیر را درست قبل از خطی که می گوید اضافه کنید /* That’s all, stop editing! Happy blogging. */
:
/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(FILE) . '/');
define('CONCATENATE_SCRIPTS', false);
در اینجا کاری است که این کد انجام می دهد:
- این
ABSPATH
تعریف تضمین می کند که وردپرس مسیر صحیح فایل های اصلی خود را می داند، که می تواند از مشکلات بارگذاری جی کوئری جلوگیری کند. - این
CONCATENATE_SCRIPTS
خط الحاق اسکریپت را غیرفعال می کند. این امر وردپرس را مجبور می کند تا هر اسکریپت را جداگانه بارگذاری کند و از تضادهایی که هنگام ادغام اسکریپت ها ایجاد می شود جلوگیری می کند.
پس از افزودن این کد، تغییرات خود را ذخیره کرده و سایت خود را مجددا بارگذاری کنید تا ببینید آیا خطا برطرف شده است.
غیرفعال کردن الحاق اسکریپت می تواند یک راه حل ساده اما موثر برای مشکلات jQuery باشد، به خصوص زمانی که روش های دیگر کار نمی کنند.
6. پشتیبانی Premium را دریافت کنید تا خطا را برای شما برطرف کند
اگر هیچ یک از روشهای بالا کار نمیکند یا ترجیح میدهید یک متخصص به مشکل شما نگاه کند، باید از خدمات پشتیبانی Premium WordPress ما استفاده کنید.
برای یک بار هزینه کوچک، می توانید مهندسان بسیار ماهر و حرفه ای وردپرس ما را استخدام کنید تا خطا را برای شما برطرف کنند.
هنگامی که خدمات اضطراری ما را انتخاب میکنید، مجبور نخواهید بود که به تنهایی با مشکل رفع خطای «jQuery is not defined» روبرو شوید.
به این ترتیب، سایت شما کمترین خرابی را تجربه می کند و می توانید در اسرع وقت فعالیت کسب و کار آنلاین خود را از سر بگیرید.
به علاوه، خدمات اضطراری ما شما را در یک قرارداد قفل نمی کند، بنابراین اگر به یک طرح پشتیبانی کامل از تعمیر و نگهداری علاقه ندارید، می تواند یک گزینه عالی باشد.
با این حال، اگر میخواهید رویکردی فعالتر داشته باشید و خطر بروز حوادث اضطراری وبسایت را در آینده کاهش دهید، ما خدمات تعمیر و نگهداری جامعتری را ارائه میکنیم.
منابع پاداش: عیب یابی خطاهای وردپرس
اگر تمام مراحل بالا کمکی نکردند یا میخواهید بیشتر بخوانید، منابع زیر میتوانند نقطه شروع خوبی باشند:
امیدواریم این مقاله به شما در رفع خطای «jQuery is not defined» در وردپرس کمک کرده باشد. همچنین ممکن است بخواهید راهنمای ما در مورد ارتقای جی کوئری به آخرین نسخه در وردپرس یا انتخاب بهترین آموزش های جی کوئری برای مبتدیان وردپرس را ببینید.
اگر این مقاله را دوست داشتید، لطفاً در کانال یوتیوب ما برای آموزش های ویدیویی وردپرس مشترک شوید. شما همچنین می توانید ما را در پیدا کنید توییتر و فیس بوک