الدروس المستفادة من الخروج خارج منطقة الراحة في WordPress

نشرت: 2020-01-07

كان ذلك في أواخر صيف عام 2018. كنت مطورًا مسنًا ولم أكن متأكدًا تمامًا من مكاني المناسب لعالم WordPress بعد الآن. لقد أمضيت أكثر من عقد من الزمان في تعلم خصوصيات وعموميات المنصة التي أطلقت مسيرتي المهنية وعملت أيضًا كهواية لمشاريع الحيوانات الأليفة الأخرى التي أردت معالجتها.

شعرت بالملل جزئيًا. كنت بحاجة لتحدي جديد.

أنا أحب WordPress. أكثر من ذلك ، أنا أقدر ما سمح لي WordPress بتحقيقه على مر السنين. ومع ذلك ، لم أعد سعيدًا به لمدونتي الشخصية. كانت مناسبة للوظيفة ، لكنني وجدت في كثير من الأحيان أنها تحتوي على أدوات وأدوات أكثر بكثير مما كنت بحاجة إليه. كنت أكتب أيضًا منشورات مدونة في Markdown لسنوات عديدة بدلاً من المحرر الكلاسيكي. لم يعد WordPress ببساطة جزءًا من سير العمل في مدونتي. في بعض الأحيان ، كان ذلك عائقا.

قبلت التحدى.

خلال عطلة نهاية الأسبوع ، قمت ببناء نظام مدونة مخصص يعمل. أنا متردد في تسميته نظام إدارة المحتوى (CMS) لأنه يفتقر إلى الميزات الحاسمة ، مثل الواجهة الإدارية ، التي تقع في قلب أي نظام إدارة محتوى. ومع ذلك ، فقد قمت ببناء نظام عمل من الصفر في يومين.

لم يكن لدي أي فكرة عن أنني أستطيع تحقيق مثل هذا العمل الفذ دون الاعتماد على الوظائف والأدوات المفيدة التي قدمها WordPress بسخاء لمعظم حياتي المهنية في البرمجة. لا يمكنني حساب عدد المرات التي كتبت esc_attr() أو esc_html() عن طريق الخطأ فقط لأتذكر أن تلك كانت وظائف WordPress. كانت ذاكرة عضلاتي في WordPress قوية. دون معرفة ذلك ، كل ما تعلمته من خلال البناء على WordPress دفعني لأن أصبح مطور PHP أكثر شمولاً. هناك عدد قليل من واجهات برمجة التطبيقات التي لم أعمل معها من WordPress الأساسية. لقد فهمت الكثير من الكود المصدري وعرفت أسباب الكثير من الوراثة القديمة.

لقد تضاءل مشروعي الشخصي مقارنة بقوة WordPress ولا يزال كذلك حتى يومنا هذا. ومع ذلك ، فقد نقلتني خارج منطقة الراحة الخاصة بي. سمح لي باستكشاف الأفكار القديمة بطرق جديدة.

كان أحد الأمثلة هو فهم كيفية عمل إعادة كتابة القواعد والتوجيه. لقد دعوت أنا وأصدقائي مؤخرًا أنه لا أحد يفهم حقًا واجهة برمجة تطبيقات WordPress Rewrite. أنت فقط تتلاعب به حتى يعمل شيء ما ولم يعد الرمز الجديد يكسر موقعك. توجد العديد من المكتبات الموجودة هناك ، لكنني أردت أن أفهم كيف يعمل هذا من أجل توضيحي الخاص. لذلك ، شرعت في إنشاء فئة طلب وجهاز توجيه ووحدة تحكم HTTP. كانت النتيجة النهائية حلاً أنيقًا ، اقترض كثيرًا من أطر PHP الأخرى.

باستخدام سطر بسيط من التعليمات البرمجية ، كما هو موضح أدناه لإعداد نوع محتوى "كتاب" ، يمكنني التعامل مع الطلبات الواردة لصفحة كتاب ، وتعيينها إلى المورد الصحيح ، وإخراج النموذج في الواجهة الأمامية. بدأت أتساءل لماذا ابتعدت عن مفهوم الموقع التأسيسي هذا لسنوات عديدة كمطور.

 // Create 'example.com/books/book-name'. $this->router->get( 'books/{name}', Controller::class );

كان هناك العديد من المجالات الأخرى حيث بدأت في التساؤل عن "طريقة WordPress" للقيام بالأشياء. خلال رحلة الاكتشاف هذه ، تمكنت من تعلم أشياء يمكنني إعادتها لاستخدامها في مشاريع WordPress الخاصة بي. من خلال الدخول في عالم أكبر لتطوير مواقع الويب ، تمكنت من رؤية العيوب الموجودة في النظام الأساسي بشكل أفضل والتي ساعدتني على الوقوع في حب البرمجة. ومع ذلك ، فقد كنت أيضًا قادرًا بشكل أفضل على رؤية الجمال في النظام الذي استمر آلاف المطورين في تشغيله على مدار الخمسة عشر عامًا الماضية.

ليس كل شيء عن الكود

أتيحت لي الفرصة لدراسة وتعلم أطر كبيرة مثل Laravel و Symfony. ومع ذلك ، فقد درست أيضًا كيفية عمل الأنظمة الأساسية الأخرى من منظور تجربة المستخدم البحتة.

الشيء الوحيد الذي كنت أعرفه على وجه اليقين هو أنني أردت اختبار المنصات التي تم إنشاؤها للأشخاص الذين كتبوا في Markdown. لم أكن أبحث عن منصات ضخمة للتنافس مع قوة WordPress ، مثل Joomla أو Drupal. بدلاً من ذلك ، كنت أبحث عن حلول أخف وزنًا مثل Grav و Jekyll و Hugo. أردت أن أفهم كيف تتلاءم تجربة المستخدم مع سير العمل الخاص بي.

من بين جميع الحلول التي اختبرتها ، كان لكل منها مزاياه. كان لكل منها أيضًا ميزات أو طرق للقيام بأشياء لم تكن على ذوقي. الشيء الجيد في هذه التجربة هو أنني كنت قادرًا على تحديد كيف أردت أن تعمل منصة التدوين الخاصة بي من أجلي. سمحت لي قراءة الأفكار من الآخرين في تلك المجتمعات أيضًا بالاستماع إلى مستخدمين خارج مجتمع WordPress حول سبب إعجابهم بنظام التدوين المفضل لديهم.

جاهدت للأمام. باستخدام ما تعلمته من تلك المنصات ، قمت ببناء شيء يسعدني استخدامه. لم تكن مثالية ومن المحتمل ألا تكون كذلك أبدًا. مجال للنمو ليس بالأمر السيئ.

خلال هذا الوقت ، أعادت إحياء حبي للتدوين باستخدام WordPress. على الرغم من أنه ليس دائمًا الرأي الشائع ، فقد شعر محرر الكتلة بقفزات وتقنيات أفضل من المحرر الكلاسيكي. كان شيئًا يمكنني أن أرى نفسي أستخدمه بانتظام. بصرف النظر عن مدونتي الشخصية ، بدأت في استخدامها في مشاريع أخرى. ما زلت أكتب في Markdown كل يوم. ومع ذلك ، أجد نفسي أستمتع بالكتابة داخل محرر WordPress لأول مرة منذ سنوات.

لماذا يجب أن تجرب المنصات الجديدة

من منظور المطور ، ليس من الجيد أن تصبح راضيًا وتعتمد على نظام واحد. بدلًا من أن تطلق على نفسك اسم "مطور WordPress" ، فكر فيما وراء هذا المصطلح. بدلاً من ذلك ، يجب أن تكون مبرمج PHP أو مبرمج JavaScript. أو الأفضل من ذلك ، أن تطلق على نفسك اسم مبرمج. المبرمجون يحلون المشاكل. الأدوات أو اللغات هي ما تستخدمه للانتقال من النقطة أ إلى النقطة ب.

في سوق العمل ، كونك مبرمجًا جيدًا يفتح لك المزيد من الفرص. بينما يأمل معظمنا فقط في أن يكون WordPress هو النظام الأساسي الرائد لمدة 10 أو 20 أو 50 عامًا قادمة ، يجب أن تكون مستعدًا لأي مستقبل.

فائدة أخرى للعمل مع منصات أخرى من وقت لآخر هي أنك تتعلم الأفكار التي يمكنك إعادتها إلى نظام WordPress البيئي. على سبيل المثال ، من المثير للاهتمام أن نرى كيف يطبق موضوع Sage starter محرك قوالب Laravel Blade. يمكن أن تساعد هذه الأفكار في تشكيل مستقبل WordPress.

يمكن دفع بعض الأفكار إلى جوهر WordPress. يمكن للآخرين تحسين سير عمل الفريق داخل الوكالات.

يفيد التعليم المستمر مجتمع WordPress ككل. لا تقصر هذا التعليم على الأفكار الخاصة بـ WordPress. تعلم من الخارج وأعده.