القوالب العامة في Zend Framework 1: قالب واحد حول كل صفحة
كيف كان Zend_Layout يلف كل صفحة بقالب مشترك واحد، وكيف تغيّره أو توقفه.
من الأرشيف: شاركتُ عام 2011 مقال «Managing Zend Framework Layouts» لـو. جيسون جيلمور في phpBuilder (2010) على مدونتي القديمة. هذه الصفحة ملخص قصير بكلماتي، والمقال الأصلي ملك لكاتبه.
قبل أطر العمل، كانت مواقع PHP كثيرة تجمع صفحاتها بـ include 'header.php' وinclude 'footer.php'. واستبدل Zend_Layout في Zend Framework 1 ذلك بقالب عام واحد يلتف حول محتوى كل صفحة (نمط «العرض على خطوتين»).
- التفعيل: الأمر
zf enable layoutينشئlayout.phtml، وبداخله يحدد<?php echo $this->layout()->content; ?>مكان كل صفحة. - قالب مختلف لـ Action واحد:
$this->_helper->layout->setLayout('admin'); - بلا قالب عام إطلاقًا (لطلبات AJAX أو التنزيلات):
$this->_helper->layout->disableLayout();
اليوم: في Laminas MVC (خليفة Zend Framework) يُضبط القالب العام في إعدادات view manager، ويمكن للـ Controller تغييره بـ $this->layout('layout/admin'). وانظر أيضًا كيف تتخطى الـ View أو الـ Layout في ZF2.
اقرأ المقال الأصلي: Managing Zend Framework Layouts، بقلم و. جيسون جيلمور في phpBuilder (2010).