24+ سبب من الكود لا يعمل وكيفية إصلاحه
نشرت: 2013-08-21أقوم دائمًا باختبار الكود أولاً للتأكد من أنه يعمل ، ولكن هناك العديد من الأسباب التي تجعله لا يعمل في بعض الأحيان مع كل من نفسي والأشخاص الآخرين الذين يستخدمونه على الرغم من أنه لم يتم كسره.
فيما يلي قائمة ببعض أسباب عدم عمل الكود:
- نسيت مسح ذاكرة التخزين المؤقت للمتصفح: يمكنك إجراء تغييرات على CSS وتعتقد أنها لا تعمل عندما تعمل بالفعل لأن المتصفح يعرض بالفعل إصدارًا قديمًا من الصفحات التي تتضمن رمزًا قديمًا. امسح ذاكرة التخزين المؤقت للمتصفح للتأكد.
- لم يمسح ذاكرة التخزين المؤقت للخادم: يستخدم بعض موفري الاستضافة المُدارة تخزينًا مؤقتًا قويًا للغاية من جانب الخادم. أعلم أن WPEngine يعني أنه قد يستغرق بالفعل أيامًا قبل ظهور تغييرات CSS على موقعك. يمكنك إجراء هذه التغييرات التي تعمل حقًا ولكنك تعتقد أنها لا تعمل لأنه لا يمكنك رؤية التغييرات على الواجهة الأمامية. امسح ذاكرة التخزين المؤقت للخادم واختبر الكود محليًا باستخدام التخزين المؤقت من جانب الخادم أو مكون إضافي للتخزين المؤقت.
- تم لصق كود CSS في ملف الوظائف: كود CSS لا يعمل بشكل صحيح في ملف الوظائف الذي يتضمن علامة PHP مفتوحة مما يعني قراءتها بواسطة معالج PHP مثبت على الخادم.
- تم لصق PHP في ورقة الأنماط : لا يعمل كود PHP في ملف .css الذي يقرأه متصفح وليس معالج PHP مثبتًا على الخادم.
- تم لصق PHP أو CSS في نصوص الرأس والتذييل: تقوم السمات التي تتضمن مربعًا لنصوص رأس وتذييل الصفحة بذلك لتسهيل إضافة Javascript لتتبع Google Analytics ونصوص الدردشة المباشرة ، وليس نصوص PHP.
- نسخها من صفحة ويب ولصقها في محرر السمات: خطأ شائع جدًا يمكن أن يتسبب في دوران الفواصل العليا مما يؤدي إلى ظهور شاشة بيضاء للموت تؤدي إلى كسر موقعك. قم دائمًا بنسخ الكود الأولي ولصقه في نهاية الملف باستخدام محرر نصوص مثل Notepad ++.
- لم تقم بنسخ جميع الكود: نسخ جزء من كود CSS لا يتضمن الفصل الدراسي أو يفتقد لقوس إغلاق سيؤدي إلى عدم عمل الكود. لذلك قد تعتقد أن الكود ليس مفيدًا عندما تكون المشكلة الوحيدة هي أنك تركت قوسًا أو فاصلة منقوطة خلفك.
- لم ألصق كل الكود : كما هو مذكور أعلاه ويحدث أحيانًا.
- استخدم الروابط الجديدة عندما يستخدم قالبك القديم: استخدام الكود الذي يتضمن Loop hooks للمواقع التي لا تزال تستخدم ترميز XHTML القديم على المواقع الجديدة لا يعمل. ستعمل الشفرة على المواقع الأقدم لذا لم يتم كسرها ، لكنها لن تعمل على HTML 5 لتمكين السمات الفرعية.
- استخدم الخطافات القديمة عندما يستخدم قالبك الجديد: كما هو مذكور أعلاه
- استخدام متصفح قديم لا يدعم الفئات في الكود: بعض المتصفحات القديمة لا تدعم فئات CSS معينة مما يعني أن الكود لن يقوم بما كتب من أجله. يمكنك تثبيت عدة متصفحات لاختبار الكود أو استخدام أدوات مجانية عبر الإنترنت للتوافق عبر المتصفحات.
- استخدام أحدث إصدار من المتصفح الذي لا يدعم الفئات الموجودة في الكود حتى الآن: بعض المتصفحات الجديدة لا تدعم بعض فئات CSS مما يعني أن الكود سيعمل على المتصفحات القديمة ، ولكنك قد تعتقد أنه لا يدعم ذلك لأنك تستخدم إصدارًا تجريبيًا الإصدار أو أحدث إصدار تم إصداره للتو.
- نسخ علامة PHP الافتتاحية ولصقها في ملف الوظائف الخاص بك: تتضمن مقتطفات PHP عمومًا علامة PHP مفتوحة ، ولكن لا ينبغي لصقها في ملف وظائف يتضمن هذه العلامة بالفعل. ستصلك رسالة خطأ وستكسر موقعك إذا حدث ذلك ، ومن السهل إصلاحه ببساطة عن طريق إزالة العلامة. هذا هو السبب في أن أفضل ممارساتها دائمًا هي استخدام محرر نصوص للصق الكود في الملف الفعلي بدلاً من استخدام محرر WordPress لهم. إذا قمت بإضافة الكود إلى الملف الفعلي ، يمكنك بسهولة إعادة فتحه وإزالة المشكلة بسرعة وهذا ليس هو الحال إذا كنت تستخدم محرر السمات حيث سيتم حظر دخولك إلى الموقع عندما تعاني من خطأ في البرمجة.
- نسخ كلا الحلين ولصقهما بدلاً من اختيار أحدهما: تتضمن العديد من المنشورات والمنتديات مقتطفات تعليمات برمجية متعددة تحل نفس المشكلات. إذا قمت بلصق مقتطفين من التعليمات البرمجية يقومان بنفس الشيء ، فيمكن أن يؤدي ذلك إلى تعطل موقعك ، لذا قد تعتقد أن الشفرة معطلة وهذا ليس هو الحال. استخدم مقتطفًا واحدًا فقط في كل مرة.
- تم نسخ كود الوظائف في ملف قالب: في بعض الأحيان ستجد كود PHP الذي تمت كتابته لاستخدامه في ملف قالب بدلاً من ملف وظائف السمات الفرعية. لا تعمل شفرة القالب دائمًا في ملف الوظائف حيث يتم تغليفها عمومًا بعلامات فتح وإغلاق PHP. لا تعني الوظائف المخصصة عمومًا أنها لن تعمل بشكل عام في ملف لوحة te ، اعتمادًا على السمة. ما عليك سوى التأكد من أنك تعرف بالضبط الملف الذي تريد لصق الكود فيه وإلا فقد تتلقى خطأ يفكر في أن الكود لا يعمل عندما يعمل.
- لديك مكون إضافي مثبت يركب الكود: بعض المكونات الإضافية تتخطى كود PHP مما يعني أن الكود مع المرشحات والخطافات قد لا يعمل. مثال على ذلك هو المكون الإضافي Genesis Simple Edits. إذا كان لديك هذا المكون الإضافي مثبتًا والذي يمكّنك من تخصيص معلومات المنشور ونشر التعريف ، فلن تعمل إضافة كود PHP للقيام بنفس الشيء الذي يتضمن نشر التعريف أو مرشح معلومات المنشور. قد تعتقد أن الكود لا يعمل في حين أنه يعمل في الواقع وكل ما عليك فعله لحل المشكلة وتشغيل الكود هو إلغاء تنشيط المكون الإضافي.
- استخدام كود PHP لتغيير التنسيق بشكل مشروط لن يعمل هذا الرمز على بعض السمات التي تستخدم bbPress والتي تستخدم أيضًا المكون الإضافي Genesis bbPress connect. يتم ربط هذا المكون الإضافي بفلاتر Genesis وهو نفس الشيء الذي يقوم به كود PHP لتغيير التخطيطات بشكل مشروط بحيث لا يعمل لأنه يتخطى الكود.
- استخدام فئات XHTML CSS على سمة HTML 5 التابعة - مثال: #content لن يعمل على سمة HTML 5 التابعة التي تستخدم محتوى .entry.
- استخدام ترميز HTML في سمة XHTML - لن يعمل site-header على موقع يقوم بتشغيل ترميز XHTML لذلك تحتاج إلى استخدام #header.
- رمز قالب الصفحة الأمامية - لا يعمل أي رمز في قالب الصفحة الأولى إلا عند استخدام إعدادات القراءة الافتراضية. إذا قمت بتغيير هذه الإعدادات واخترت "صفحة ثابتة" كصفحتك الأولى ، فلن يعمل الرمز الموجود في قالب الصفحة الأولى.
- تمت إضافة CSS بعد استعلامات الوسائط - من الأفضل إضافة CSS مخصص قبل استعلامات الوسائط وإلا فقد لا تعمل.
- تمت إضافة CSS لتعديل Class Styled بالفعل - لقد أضفت CSS في نهاية ورقة الأنماط الخاصة بك لتغيير تصميم عنصر موجود تم تصميمه بالفعل افتراضيًا. مثال على ذلك هو عندما تقوم بتعديل منطقة عنصر واجهة المستخدم لاستخدام عنصر واجهة المستخدم لمنشورات Genesis المميزة عندما يتم تصميمه افتراضيًا لاستخدام عنصر واجهة المستخدم للصفحة المميزة. قد يكون CSS الخاص بك مختلفًا ولكنك تستخدم فئة مختلفة. ما عليك القيام به هو تعديل CSS الافتراضي بحيث يتم تصميم عنصر واجهة المستخدم للصفحة المميزة على الأنماط الأطول وأنماط عنصر واجهة المستخدم المميز فقط.
- رمز قالب الصفحة الرئيسية - أي رمز موجود في ملف قالب home.php الخاص بك ، سيعمل فقط على الصفحة الأولى عند استخدام إعدادات القراءة الافتراضية. إذا كنت تستخدم صفحة ثابتة كصفحتك الأمامية ، فلن تعمل الشفرة إلا على صفحة منشوراتك (مثل صفحة مدونة) إذا لم تقم بتحديد قالب صفحة المدونة من القائمة المنسدلة. (ينطبق فقط على السمات التي تحتوي على قالب صفحة مدونة).
- تم تعديل CSS بشكل غير صحيح يجعل فاصل CSS آخر - قام أحد الأعضاء بتثبيت بعض التعليمات البرمجية لإنشاء تخطيط مخصص ولكنه لم يعمل لأن CSS لتعديل عرض المحتوى لم يعمل. اكتشفوا CSS أخرى أضافوها سابقًا باستخدام! المهم منع CSS الجديد من العمل.
لن يعمل الكود أعلاه إذا كان لديك أيضًا المكون الإضافي Genesis Simple Edits المنشط لأنه يركب مرشح معلومات المنشور.
هذا كل ما يمكنني التفكير فيه في الوقت الحالي ، لكنني متأكد من أن هناك العديد من الأسباب التي تجعل الكود لا يعمل (ولكنه يعمل بالفعل) والذي يمكن إضافته إلى هذه القائمة.
المنشورات ذات الصلة
- 5 نقاط مهمة يجب مراعاتها قبل إعادة نشر الكود