الفرق بين المراجعتين لصفحة: «Twig/include function»
أسامه-دمراني (نقاش | مساهمات) 1.0: إضافة عنوان الصفحة | 2.0 محتوى الصفحة |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
سطر 9: | سطر 9: | ||
</syntaxhighlight>وهنا لا يُسمح بالوصول إلى أي متغير:<syntaxhighlight lang="twig"> | </syntaxhighlight>وهنا لا يُسمح بالوصول إلى أي متغير:<syntaxhighlight lang="twig"> | ||
{{ include('template.html', with_context = false) }} | {{ include('template.html', with_context = false) }} | ||
</syntaxhighlight>إذا كان التعبير يقيَّم إلى نسخة <code>\Twig\Template</code> أو <code>\Twig\TemplateWrapper</code> فإن Twig يستخدمه مباشرة:<syntaxhighlight lang=" | </syntaxhighlight>إذا كان التعبير يقيَّم إلى نسخة <code>\Twig\Template</code> أو <code>\Twig\TemplateWrapper</code> فإن Twig يستخدمه مباشرة:<syntaxhighlight lang="php"> | ||
// {{ include(template) }} | // {{ include(template) }} | ||
سطر 32: | سطر 32: | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* [[Twig/intro|مقدمة عن محرك القوالب Twig | *[[Twig/intro|مقدمة عن محرك القوالب Twig]] | ||
* [[Twig/advanced|توسيع Twig | * [[Twig/advanced|توسيع Twig]] | ||
* [[Twig/internals|المكونات الداخلية لـ Twig | *[[Twig/internals|المكونات الداخلية لـ Twig]] | ||
* [[Twig/tags|الوسوم في Twig]] | *[[Twig/tags|الوسوم في Twig]] | ||
* [[ Twig/filters|المرشحات في Twig]] | *[[ Twig/filters|المرشحات في Twig]] | ||
* [[ Twig/functions|الدوال في Twig]] | *[[ Twig/functions|الدوال في Twig]] | ||
== المصادر == | == المصادر == | ||
* [https://twig.symfony.com/doc/3.x/functions/include.html صفحة توثيق الدالة include في توثيق Twig الرسمي] | * [https://twig.symfony.com/doc/3.x/functions/include.html صفحة توثيق الدالة include في توثيق Twig الرسمي] | ||
[[تصنيف:Twig]] | [[تصنيف:Twig]] | ||
[[تصنيف:Twig Functions]] | [[تصنيف:Twig Functions]] |
مراجعة 16:56، 5 مايو 2021
تعيد الدالة include
المحتوى المُخرَج لقالب ما:
{{ include('template.html') }}
{{ include(some_var) }}
يكون للقوالب المدرَجة وصول إلى متغيرات السياق النشط، وإذا كنت تستخدم محمِّل نظام الملفات فيُبحث حينها عن القوالب في المسارات المعرفة به. كذلك يُمرَّر السياق افتراضيًا إلى القالب لكن يمكن تمرير متغيرات إضافية. انظر المثال أدناه حيث يكون لـ template.html
وصول إلى المتغيرات التي في السياق الحالي والمتغيرات الإضافية التي تم توفيرها:
{{ include('template.html', {foo: 'bar'}) }}
يمكن تعطيل الوصول إلى السياق بضبط with_context
على false
، انظر المثال التالي حيث لا يُسمح بالوصول إلا إلى المتغير foo
:
{{ include('template.html', {foo: 'bar'}, with_context = false) }}
وهنا لا يُسمح بالوصول إلى أي متغير:
{{ include('template.html', with_context = false) }}
إذا كان التعبير يقيَّم إلى نسخة \Twig\Template
أو \Twig\TemplateWrapper
فإن Twig يستخدمه مباشرة:
// {{ include(template) }}
$template = $twig->load('some_template.twig');
$twig->display('template.twig', ['template' => $template]);
عند تعيين راية ignore_missing
فإن Twig يعيد سلسلة نصية فارغة إذا لم يكن القالب موجودًا:
{{ include('sidebar.html', ignore_missing = true) }}
يمكن توفير قائمة من القوالب التي يُتحقق من وجودها قبل الإدراج، ويُخرَج أول قالب موجود:
{{ include(['page_detailed.html', 'page.html']) }}
إذا تم تعيين ignore_missing
فإنه لا يخرِج شيئًا إذا لم يكن أي من القوالب موجودًا، وإلا فإنه يرفع اعتراضًا (exception). إذا أنشأ المستخدم النهائي القالب فيجب وضعه في صندوق اختبار (sand box) قبل إدراجه:
{{ include('page.html', sandboxed = true) }}
الوسائط
template
: القالب الذي يجب إخراجه.variables
: القوالب التي يجب تمريرها إلى القالب.with_context
: تمرير متغيرات السياق الحالي أم لا.ignore_missing
: تجاهل القوالب المفقودة أم لا.sandboxed
: وضع القالب في صندوق اختبار أم لا.
انظر أيضًا
- مقدمة عن محرك القوالب Twig
- توسيع Twig
- المكونات الداخلية لـ Twig
- الوسوم في Twig
- المرشحات في Twig
- الدوال في Twig