یکی از مشکلات رایجی که کاربران وردپرس ممکن است هنگام بارگذاری سایت خود با آن مواجه شوند، خطای jQuery is not defined است. این خطا…
آنچه در این مطلب خواهید خواند
یکی از مشکلات رایجی که کاربران وردپرس ممکن است هنگام بارگذاری سایت خود با آن مواجه شوند، خطای jQuery is not defined است. این خطا معمولاً به دلیل بارگذاری ناموفق jQuery، مشکلات مربوط به افزونهها، تداخل در قالب یا تغییر در ترتیب بارگیری اسکریپتها رخ میدهد. اگر این مشکل حل نشود، ممکن است عملکرد سایت شما مختل شده و برخی از قابلیتهای مهم، مانند منوهای کشویی، اسلایدرها و فرمهای تعاملی، به درستی کار نکنند.
در این مقاله از پارس اوستا، به شما ۶ روش کاربردی و تستشده برای رفع این خطا را معرفی میکنیم تا بدون نیاز به دانش فنی زیاد، سایت وردپرسی خود را به حالت عادی برگردانید. با ما همراه باشید تا این مشکل را گامبهگام و به سادهترین روش ممکن برطرف کنیم.
خطای “jQuery is not defined” در وردپرس معمولاً به این دلیل رخ میدهد که مرورگر قادر به یافتن یا بارگذاری صحیح فایل jQuery نیست. این مشکل میتواند به دلایل مختلفی ایجاد شود، از جمله:
۱️⃣ بارگذاری ناموفق jQuery: ممکن است فایل jQuery در سرور شما به درستی لود نشود.
۲️⃣ تداخل بین افزونهها یا قالبها: برخی افزونهها یا قالبها ممکن است jQuery را بهدرستی بارگذاری نکنند یا باعث تداخل شوند.
۳️⃣ عدم بارگذاری jQuery در قالب: برخی از قالبهای وردپرس بهطور پیشفرض jQuery را بارگذاری نمیکنند که این میتواند مشکل ایجاد کند.
۴️⃣ تغییر در ترتیب بارگیری اسکریپتها: اگر اسکریپت jQuery قبل از اسکریپتهایی که به آن وابسته هستند بارگذاری نشود، این خطا ظاهر میشود.
۵️⃣ مشکلات مرتبط با CDN: اگر از CDN برای بارگذاری jQuery استفاده میکنید و اتصال به آن برقرار نشود، وردپرس نمیتواند فایل موردنیاز را دریافت کند.
۶️⃣ غیرفعال شدن jQuery در وردپرس: در برخی نسخههای جدید وردپرس، jQuery بهطور پیشفرض حذف یا غیرفعال شده که ممکن است باعث این مشکل شود.
برای رفع این خطا، روشهای مختلفی وجود دارد که در ادامه به آنها خواهیم پرداخت. 🚀
📌 بیشتر بدانید: پیدا کردن ویرایشگر فایل تم در وردپرس و برطرف کردن مشکل غیرفعال بودن آن
یکی از سادهترین و مؤثرترین راهها برای رفع خطای “jQuery is not defined” در وردپرس، بهروزرسانی هسته وردپرس، قالب و افزونهها است. در بسیاری از موارد، این خطا به دلیل استفاده از نسخههای قدیمی وردپرس یا افزونههایی که هنوز از jQuery قدیمی استفاده میکنند، رخ میدهد.
۱️⃣ وردپرس را آپدیت کنید
۲️⃣ قالب (تم) وردپرس را آپدیت کنید
۳️⃣ افزونهها را بررسی و آپدیت کنید
اگر پس از بهروزرسانی، همچنان مشکل وجود داشت، ممکن است یک افزونه یا قالب خاص باعث این خطا شده باشد. در این صورت، روشهای دیگر را بررسی کنید. 🚀
📌 بیشتر بدانید:نحوه پشتیبانگیری از چند سایت وردپرس (افزونه + روشهای دستی)
گاهی اوقات، دلیل بروز خطای “jQuery is not defined” در وردپرس این است که jQuery به درستی بارگذاری نشده یا بهدرستی در کدهای سایت قرار نگرفته است. این مشکل معمولاً زمانی رخ میدهد که یک افزونه یا قالب، jQuery را از منبعی خارجی فراخوانی کند یا ترتیب بارگذاری اسکریپتها به هم بخورد.
۱️⃣ بررسی بارگذاری jQuery در کنسول مرورگر
F12
یا Ctrl + Shift + I
را فشار دهید تا ابزار توسعهدهنده (Developer Tools) باز شود.۲️⃣ بررسی بارگذاری صحیح jQuery در سورس کد سایت
Ctrl + U
را بزنید تا کد HTML نمایش داده شود.Ctrl + F
عبارت “jquery.js” را جستجو کنید.۳️⃣ اضافه کردن jQuery به سایت وردپرسی
اگر jQuery در سایت شما بارگذاری نمیشود، میتوانید آن را به فایل functions.php
قالب اضافه کنید:
function enqueue_jquery_script() {
wp_enqueue_script('jquery');
}
add_action('wp_enqueue_scripts', 'enqueue_jquery_script');
این کد باعث میشود که وردپرس بهصورت پیشفرض jQuery را از کتابخانه داخلی خود بارگذاری کند.
اگر هنوز مشکل رفع نشده است، ممکن است یک افزونه یا اسکریپت دیگر باعث این خطا شده باشد. در این صورت، باید روشهای دیگر مانند تغییر ترتیب بارگذاری اسکریپتها یا استفاده از یک Fallback را بررسی کنید. 🚀
📌 بیشتر بدانید:خطاهای فید در وردپرس| آیا باید آن را رفع کنیم؟
گاهی اوقات، به دلایل مختلف مانند قطعی سرور CDN یا مشکلات مربوط به بارگذاری اسکریپتها، فایل jQuery ممکن است به درستی لود نشود. در این شرایط، اضافه کردن یک Fallback (نسخه پشتیبان) میتواند به حل مشکل کمک کند.
۱️⃣ افزودن کد Fallback به functions.php
در صورت عدم بارگذاری jQuery، این کد نسخه محلی را جایگزین میکند.
function add_jquery_fallback() {
echo '<script>
window.jQuery || document.write(\'<script src="https://code.jquery.com/jquery-3.6.0.min.js"><\/script>\')
</script>';
}
add_action('wp_footer', 'add_jquery_fallback');
میتوانید یک نسخه محلی از jQuery را در پوشه قالب خود قرار دهید و این کد را در functions.php
اضافه کنید:
function load_local_jquery() {
wp_deregister_script('jquery');
wp_register_script('jquery', get_template_directory_uri() . '/js/jquery.min.js', false, '3.6.0', true);
wp_enqueue_script('jquery');
}
add_action('wp_enqueue_scripts', 'load_local_jquery');
این روش، ابتدا نسخه پیشفرض jQuery را حذف کرده و سپس یک نسخه محلی جایگزین آن میکند.
📌 بیشتر بدانید:بازیابی رمز وردپرس از طریق دیتابیس: آموزش گامبهگام و تصویری
گاهی اوقات، خطای “jQuery is not defined” به دلیل بارگذاری نادرست اسکریپتها در وردپرس رخ میدهد. در این حالت، ممکن است jQuery بعد از اسکریپتهای دیگر بارگذاری شود، درحالیکه بسیاری از افزونهها و کدهای جاوا اسکریپت به jQuery وابسته هستند. برای حل این مشکل، میتوانیم ترتیب بارگیری اسکریپتها را اصلاح کنیم.
وردپرس بهطور پیشفرض، jQuery را در هدر بارگذاری میکند. اگر jQuery در فوتر بارگذاری شده باشد، ممکن است برخی از اسکریپتها قبل از لود شدن آن اجرا شوند و باعث ایجاد خطا شوند.
📌 بررسی و اصلاح بارگذاری jQuery در functions.php
:
function include_jquery_correctly() {
if (!is_admin()) {
wp_deregister_script('jquery');
wp_register_script('jquery', 'https://code.jquery.com/jquery-3.6.0.min.js', false, '3.6.0', false);
wp_enqueue_script('jquery');
}
}
add_action('wp_enqueue_scripts', 'include_jquery_correctly');
🔹 این کد چه میکند؟
برخی افزونهها و قالبها ممکن است بدون وابستگی به jQuery اجرا شوند و باعث ایجاد مشکل شوند. برای حل این مشکل، هنگام ثبت اسکریپتهای سفارشی، اطمینان حاصل کنید که jQuery بهعنوان وابستگی تعریف شده است.
📌 افزودن jQuery به اسکریپتهای سفارشی در functions.php
:
function enqueue_custom_scripts() {
wp_enqueue_script('custom-script', get_template_directory_uri() . '/js/custom.js', array('jquery'), null, true);
}
add_action('wp_enqueue_scripts', 'enqueue_custom_scripts');
🔹 این کد چه کاری انجام میدهد؟
custom.js
را بارگذاری میکند، اما فقط بعد از jQuery اجرا میشود.array('jquery')
تضمین میکند که jQuery قبل از این اسکریپت بارگذاری شود.wp_footer
برای بارگذاری صحیح اسکریپتهاگاهی اوقات، برخی اسکریپتها بهاشتباه در هدر بارگذاری میشوند، درحالیکه باید در فوتر قرار بگیرند تا jQuery قبل از آنها لود شود.
📌 بررسی و اصلاح بارگذاری در footer.php
:
در فایل footer.php
قالب خود، قبل از بسته شدن تگ </body>
، مطمئن شوید که کد زیر وجود دارد:
<?php wp_footer(); ?>
</body>
اجرا میشوند.📌 بیشتر بدانید:
✅ اگر همچنان مشکل باقی ماند، مراحل زیر را بررسی کنید:
F12
در کروم و فایرفاکس) برای بررسی خطاها در تب Console استفاده کنید.define('SCRIPT_DEBUG', true);
) در wp-config.php
برای بررسی مشکلات جاوا اسکریپت استفاده کنید.🚀 با اجرای این مراحل، مشکل بارگذاری نادرست jQuery رفع خواهد شد و سایت شما بدون خطا اجرا میشود.
اگر مشکل “jQuery is not defined” همچنان ادامه دارد، ممکن است لازم باشد تنظیمات وردپرس را از طریق فایل wp-config.php
بررسی و اصلاح کنید. این روش برای کاربران پیشرفتهتر مناسب است و میتواند به عیبیابی و رفع تداخلهای بارگیری اسکریپتها کمک کند.
یکی از راههای تشخیص مشکلات مربوط به jQuery، فعال کردن حالت اشکالزدایی در وردپرس است. برای انجام این کار:
🔹 وارد هاست خود شوید و فایل wp-config.php
را ویرایش کنید.
🔹 کد زیر را اضافه یا مقدار false
را به true
تغییر دهید:
define('WP_DEBUG', true);
define('SCRIPT_DEBUG', true);
🔹 این تنظیمات چه کاری انجام میدهند؟
WP_DEBUG
حالت اشکالزدایی را فعال میکند تا خطاهای PHP و جاوا اسکریپت نمایش داده شوند.SCRIPT_DEBUG
به وردپرس دستور میدهد که بهجای نسخههای فشردهشده (minified)، نسخههای اصلی اسکریپتها را بارگذاری کند.اگر پس از فعالسازی، خطاهای خاصی در کنسول مرورگر نمایش داده شد، میتوانید دلیل اصلی مشکل jQuery را پیدا کنید و آن را برطرف کنید.
برخی افزونهها و قالبها ممکن است jQuery را از CDNهای خارجی بارگذاری کنند که میتواند باعث تداخل یا عدم بارگیری صحیح شود. برای غیرفعال کردن این رفتار:
🔹 کد زیر را به فایل wp-config.php
اضافه کنید:
define('CONCATENATE_SCRIPTS', false);
🔹 این کد چه میکند؟
📌 نکته: اگر پس از این تغییر، مشکل برطرف شد، احتمالاً یکی از افزونهها jQuery را از منبع دیگری بارگیری میکرده است.
wp-config.php
گاهی اوقات، تنظیمات نادرست سطح دسترسی فایلها میتواند مانع از اجرای صحیح jQuery شود.
🔹 بررسی کنید که سطح دسترسی wp-config.php
روی ۶۴۴
یا ۶۴۰
تنظیم شده باشد.
🔹 بررسی کنید که پوشه wp-includes/js/jquery/
دارای سطح دسترسی ۷۵۵
باشد.
📌 اگر دسترسی اشتباه تنظیم شده باشد:
wp-config.php
کلیک راست کرده و گزینه Permissions را انتخاب کنید.✅ اگر مشکل همچنان باقی است، موارد زیر را بررسی کنید:
wp-config.php
را بعد از اعمال تغییرات، کش مرورگر و سایت را پاک کنید.F12
در کروم و فایرفاکس) برای تشخیص بهتر مشکل استفاده کنید.🚀 با انجام این مراحل، مشکلات مربوط به بارگیری jQuery از طریق wp-config.php
را شناسایی و برطرف خواهید کرد.
📌 بیشتر بدانید:آموزش هایلایت کردن متن در وردپرس: سریعترین روشها و ابزارها
اگر تمام روشهای قبلی برای رفع خطای “jQuery is not defined” مؤثر نبودهاند و مشکل همچنان پابرجا است، دریافت پشتیبانی تخصصی از یک توسعهدهنده یا تیم پشتیبانی وردپرس میتواند آخرین راهحل مؤثر باشد. در موارد پیچیدهتر، ممکن است نیاز به بررسی عمیقتر کد، تداخلهای افزونهها، یا مشکلات سرور وجود داشته باشد که به راحتی توسط خود شما قابل شناسایی نباشد.
🔹 تماس با پشتیبانی تم یا افزونه:
🔹 استفاده از خدمات پشتیبانی وردپرس:
🔹 استخدام توسعهدهنده وردپرس:
🔹 حل سریعتر مشکل: پشتیبانی تخصصی میتواند مشکل شما را سریعتر شناسایی و حل کند، بدون نیاز به صرف زمان زیاد.
🔹 بررسی دقیق کد: گاهی اوقات مشکلات مربوط به jQuery به کد سایت یا تداخلهای پیچیده مربوط میشود که فقط یک توسعهدهنده میتواند آنها را بهطور صحیح بررسی کند.
🔹 حل مشکلات مکرر: پشتیبانی میتواند به شما کمک کند تا مشکلات مشابه در آینده را شناسایی و پیشگیری کنید.
✅ اگر از یک پشتیبانی تخصصی استفاده میکنید، مطمئن شوید که تمامی جزئیات خطا را بهطور کامل با آنها به اشتراک بگذارید تا بتوانند مشکل را سریعتر و دقیقتر تشخیص دهند.
🚀 با دریافت پشتیبانی تخصصی، میتوانید بهطور مؤثرتر و سریعتر مشکلات پیچیده سایت خود را رفع کنید و تجربه کاربری بهتری ارائه دهید.
خطای “jQuery is not defined” در وردپرس معمولاً به دلیل بارگیری نادرست jQuery یا مشکلات مربوط به افزونهها و قالبها رخ میدهد. در این مقاله، ۶ روش برای حل این مشکل بررسی شد، از جمله بهروزرسانی وردپرس، بررسی بارگذاری jQuery، تغییر ترتیب اسکریپتها، ویرایش فایل wp-config.php و استفاده از پشتیبانی تخصصی. با اجرای این مراحل، میتوانید این خطا را بهسادگی رفع کرده و عملکرد سایت وردپرسی خود را بهبود دهید.
✅ آیا این روشها را امتحان کردهاید؟ تجربه خود را با ما به اشتراک بگذارید!