الفرق بين المراجعتين لصفحة: «Twig/autoescape»
< Twig
أسامه-دمراني (نقاش | مساهمات) طلا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
سطر 16: | سطر 16: | ||
كل ما في هذه الكتلة سيُطبع كما هو. | كل ما في هذه الكتلة سيُطبع كما هو. | ||
{% endautoescape %} | {% endautoescape %} | ||
</syntaxhighlight>عند تفعيل التهريب التلقائي فسيُهرَّب كل شيء افتراضيًا عدا القيم المحددة صراحة أنها آمنة، فتلك يمكن تحديدها في القالب باستخدام | </syntaxhighlight>عند تفعيل التهريب التلقائي فسيُهرَّب كل شيء افتراضيًا عدا القيم المحددة صراحة أنها آمنة، فتلك يمكن تحديدها في القالب باستخدام المرشح <code>[[Twig/raw|raw]]</code>:<syntaxhighlight lang="twig"> | ||
{% autoescape %} | {% autoescape %} | ||
{{ safe_value|raw }} | {{ safe_value|raw }} | ||
سطر 26: | سطر 26: | ||
{{ hello }} | {{ hello }} | ||
{{ "<strong>world</strong>" }} | {{ "<strong>world</strong>" }} | ||
</syntaxhighlight>سيُخرج التعبير السابق هكذا: "<nowiki><strong>Hello</strong></nowiki> world". | </syntaxhighlight>سيُخرج التعبير السابق هكذا: "<nowiki><strong>Hello</strong></nowiki> '''world'''". | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* [ | * [[Twig/intro|مقدمة عن Twig]] | ||
* [ | * [[Twig/api|محرك Twig للمطورين]] | ||
* [ | * [[Twig/escape|الوسم escape]] | ||
* [[Twig/parent|الدالة parent | * [[Twig/parent|الدالة parent]] | ||
== المصادر == | == المصادر == | ||
سطر 41: | سطر 41: | ||
[[تصنيف:Twig]] | [[تصنيف:Twig]] | ||
[[تصنيف:Twig Tags]] | [[تصنيف:Twig Tags]] | ||
مراجعة 15:34، 5 مايو 2021
تستطيع تحديد جزء من قالب ما من أجل التحكم في تهريبه باستخدام الوسم autoescape
كما يلي:
{% autoescape %}
HTML كل ما في هذه الكتلة سيُهرَّب باستخدام خطة
{% endautoescape %}
{% autoescape 'html' %}
HTML كل ما في هذه الكتلة سيُهرَّب باستخدام خطة
{% endautoescape %}
{% autoescape 'js' %}
JS كل ما في هذه الكتلة سيُهرَّب باستخدام خطة
{% endautoescape %}
{% autoescape false %}
كل ما في هذه الكتلة سيُطبع كما هو.
{% endautoescape %}
عند تفعيل التهريب التلقائي فسيُهرَّب كل شيء افتراضيًا عدا القيم المحددة صراحة أنها آمنة، فتلك يمكن تحديدها في القالب باستخدام المرشح raw
:
{% autoescape %}
{{ safe_value|raw }}
{% endautoescape %}
الدوال التي تعيد بيانات القالب -مثل وسم الشيفرات الجامعة (macros) و الدالة parent
- تعيد دائمًا ترميزًا آمنًا (safe markup).
لاحظ أن Twig لا يهرب القيمة المهربة بواسطة فلتر escape
، ولا يهرِّب التعابير الساكنة (static expressions):
{% set hello = "<strong>Hello</strong>" %}
{{ hello }}
{{ "<strong>world</strong>" }}
سيُخرج التعبير السابق هكذا: "<strong>Hello</strong> world".