في الوقت الحاضر، يعد ووردبريس أفضل منشئ الموقع في الإنترنت. نشأ إشتهار ووردبريس من خدمات و ميزات متددة يقدّمها. مع ذلك، يكون معه مشاكل مثلما أي شئ آخر، بنفس قدر يمكن أن تتم فعالة هذه CMS. إحدي من هذه المشكلات هو خطأ is not a function $ في ووردبريس. هذا الخطأ يؤدي إلي عرض صفحة 404 في موقع الويب الخاص بكم.
نتكلم في هذه المقالة عن تعليم حل خطأ is not a function $.
ما هو خطأ is not a function $؟
يحدث خطأ is not a function $ عندما يدعو شفرة قبل دعوة مكتبة JQuery. على سبيل المثال، إذا قام مكون إضافي أو قالب ووردبريس إلي دعوة شفرة قبل دعوة المكتبة فيظهر هذا الخطأ.
إفتراضياً، ووردبريس لا يتعرف $ كوصفة JQuery و ينبغي إنشاء التغييرات لحلّ هذه المشكلة. على رغم أن يمكن أن يتحدي إزالة هذا الخطأ للمستخدمين الذين ليس لديها علم البرمجة.
![](https://betterstudio.com/wp-content/uploads/2019/10/Function.jpg)
![](https://betterstudio.com/wp-content/uploads/2019/10/Function.jpg)
نوصي الحصول على النسخ الإحتياطي من موقع الويب الخاص بكم قبل إجراء التغييرات في ملفات نواة ووردبرس كما هو الحال دائماً. هذا أمر واجب لأن إذا تنسي ; بسيط فينتظركم العواقب الكثيرة.
توفير هذا ملف النسخ الإحتياطي بهذا السبب أن قاموا بإستعادة موقع الويب الخاص بكم بسبب التغيرات التي تم إجراءها إذا واجهوا إلي المشكلة.
إستخدام $ عوضاً ل JQuery في ووردبريس من خلال الوظيفة
إحدي من أسهل أساليب لحل هذا الخطأ هو إستخدام $ عوضاً ل JQuery. للقيام إلي هذا العمل يجب إضافة السكريبت التالي إلي ملف function.php لقالب موقع الويب الخاص بكم.
wp_enqueue_script("jquery");
الكثير من مطوري المكون الإضافي و قالب ووردبريس إنتبهوا على هذا الموضوع. فلهذا يرحج أن يستخدموا JQuery بالنسبة إلي $.
على سبيل المثال، يكون JQuery على النحو التالي عادة:
$(“#element”).function();
يكون JQuery على النحو التالي في ووردبريس:
jQuery(“#element”).function();
إستخدام JQuery في سكريبت بمرات عديدة يصعب قراءته و من ناحة أخري يزداد حجم سكريبت كذلك. يوصي إلي إستخدام $ عوضاً ل JQuery في خريطة موقع الويب الخاص بكم في قسم التذييل. من الكفاية إستبدال الشفرة التالية في قسم تذييل قالب موقع الويب بسهولة:
(function($) {
// console.log($);
})( jQuery );
If you would like to add the code to the header of your theme, simply use the following code:
jQuery(document).ready(function( $ ) {
// console.log($);
});
يمكنك كتابة سكريبت واضح لموع الويب الخاص بكم من خلال هذه الشفرة.
تعريف الإسم المستعار الجديد ل jQuery
يمكن للمستخدمين إجراء التغييرات الكثيرة على jQuery. إحدي من هذه التغييرات، إمكانية تغيير $ بأي إسم مطلوب. إستخدم الشفرة التالية لإستخدام الإسم المستعار الجديد ل jQuery و إستبدال إسمكم المطلوب بالنسبة إلي j.
var j = jQuery.noConflict();
j( "div p" ).hide();
// Do something with another library's $()
$( "content" ).style.display = "none";
تعطيل حالة noConflict كاملاً
إتبع الخطوات التالية لتعطيل حالة noConflict في ووردبريس:
$ = jQuery.noConflict(true);
هذه الشفرة تؤدي إلي تعطيل حالة noConflict تماماً.
الأمر $.command يسبب إلي التحكم على متغييرات $ و إستعادتهم إلي مكاتب يتعلقون إليها لأول مرة. هذا الأمر يتأكد أن لم يكن توافق بين jQuery و $ من المكاتب الأخري.
إستنتاج
تكلمنا في هذه المقالة عن خطأ is not a function error $. يحدث هذا الخطأ عندما يدعو شفراتكم قبل jQuery و كذلك إذا تستخدمون $ بالنسبة إلي jQuery.
إفتراضياً، يستخدم ووردبريس من jQuery بالنسبة إلي أسلوب عادي $ و هذا يسبب إلي عرض خطأ 404 بواسطة موقع الويب الخاص بكم.
يمكنك تغيير إسم $ إلي أي إسم تريدونه من خلال مشغل في قسم التذييل و الرأس لموقع الويب. أيضاً يمكنكم تعطيل حالة noConflict. تساعد حالة noConflict إلي التحكم على متغييرات $ و إستعادتها إلي المكاتب الرئيسية التي تتعلقون إليها.