Joomla أم Laravel: حين لا تكفي بنية المحتوى
يأتي Joomla جاهزًا بأمور يحتاج WordPress إضافاتٍ لها، ومنها التحكم بالصلاحيات. والحدّ حيث يكف العمل عن كونه محتوى ويصير معاملات.
يُكتب عن Joomla بإهمال في الغالب، فيحسن أن نكون دقيقين قبل بناء أي حجة.
يأتي Joomla بنظام تحكم بالصلاحيات دقيق التفاصيل، ودعم متعدد اللغات أصيل، ومحتوى منظَّم بفئات وحقول مخصصة، ولا شيء من ذلك يحتاج إضافة. وفي موقع يملك فيه المحررون صلاحيات مختلفة فعلًا ويوجد المحتوى بأربع لغات، فهذا تقدّم حقيقي على البدائل، وهو سبب قيام كثير من المواقع المؤسسية والحكومية عليه.
فهذه ليست صفحة عن منصة ضعيفة، بل صفحة عن حدٍّ يملكه كل نظام إدارة محتوى.
أين يقع الحدّ
نظام إدارة المحتوى يمثّل المستندات ومن يجوز له لمسها. هذا هو التجريد، وJoomla ينفّذه جيدًا.
ويُبلَغ الحدّ حين لا يكون ما تحتاجون تمثيله مستندًا: طلبٌ بحالات، ومعاملة بسلسلة موافقات وموعد نهائي، وحجزٌ خلفه مخزون، وقيدٌ مالي يجب أن يتسق العام المقبل. تلك معاملات، والمعاملة ليست مستندًا بحقول إضافية، مهما بدت كذلك بإقناع.
والعلامة العملية هي ذاتها على أي منصة: يسأل أحدهم أين تعيش قاعدة ما، فيكون الجواب مكوّنًا وإضافة وتجاوزًا وقالبًا. لا لأن أحدًا تهاون، بل لأن القاعدة لم تكن يومًا قاعدة محتوى.
مسألة المكوّن
يملك Joomla بنية إضافات محترمة، وبناء مكوّن مخصص جواب مشروع. وأحيانًا هو الصحيح، خاصة حين يبقى العمل قريبًا من المحتوى والصلاحيات ويستفيد من وجود نظام الصلاحيات أصلًا.
والاعتبار نطاقٌ لا قدرة. فالمكوّن يرث افتراضات Joomla ودورة طلبه وإيقاع إصداراته. وذلك مناسب لشيء بحجم مكوّن. أما حين يكون المبني تطبيقًا يصادف أنه يحتاج بعض المحتوى، فتنتهون إلى صيانة تطبيق داخل دورة إصدارات نظام محتوى، وتصير كل ترقية لـ Joomla سؤالًا عن منطق عملكم.
وحسم ذلك مبكرًا أرخص بكثير من اكتشافه في السنة الثالثة.
ما لا يلزم تغييره
النتيجة التي نوصي بها في الأغلب ليست ترحيلًا.
يحتفظ Joomla بالمحتوى والمحررين ونموذج الصلاحيات. ويُبنى التطبيق - الجزء الذي فيه المعاملات - إلى جانبه في Laravel ويقرأ ما يحتاجه عبر واجهة Joomla. لا أحد يتعلم واجهة من جديد. والإعداد متعدد اللغات الذي بنيتموه لا يُعاد بناؤه. ويُحصَر العمل في الجزء الذي احتاج أداة أخرى فعلًا.
وحيث يلزم نقل المزيد، ينتقل على مراحل والنظامان يعملان، وهو أسلوبنا في هذا بصرف النظر عما نرحّل منه.
سؤال الصيانة، من الجانبين
يستحق أن يُطرح بصوت عالٍ وفي الاتجاهين، لأنه يحسم من هذه الحالات أكثر مما تحسمه البنية.
مجتمع المساهمين والشركات حول Joomla أصغر من نظيره حول WordPress. وقاعدة شيفرة Laravel تحتاج تعيينًا مختلفًا بدوره. ولا أحد من هذين حجة لصالح خيار؛ كلاهما مُدخل لسؤال واحد: من سيكون متاحًا لصيانة هذا بعد سنتين، وهل تستطيعون الوصول إليه.
وإن كان الجواب الصادق أن لا أحد لديكم سيتولى قاعدة شيفرة على إطار عمل، فذلك أثقل وزنًا من أي مقارنة معمارية، ونفضّل قوله قبل البدء على تسليم شيء يعمّر بعد من يصونه.
وإن كان الجواب أن الجزء المعامِلاتي تجاوز نظام المحتوى المحيط به، فتلك مرحلة أولى تحسم الشكل كتابةً قبل أن يُبنى شيء.
الحدّ نفسه، على نظام المحتوى الذي تشغّله أغلب الفرق فعلًا، في نسخة WordPress من هذه الصفحة - وفيها يكون الجواب البقاء في الأغلب، لأسباب يزيل نظامُ صلاحيات Joomla بعضها.
