الفرق بين المراجعتين ل"Twig/data uri"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(1.0: إضافة عنوان الصفحة | 2.0 محتوى الصفحة)
 
ط
 
(3 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الفلتر currency_symbol في Twig}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: المرشح data_uri في Twig}}</noinclude>
يولد الفلتر <code>data_uri</code> رابطًا تشعبيًا (URL) باستخدام نظام البيانات المعرَّف في [https://tools.ietf.org/html/rfc2397 RFC 2397]:
+
يولد المرشح <code>data_uri</code> رابطًا تشعبيًا URL باستخدام نظام البيانات المعرَّف في RFC 2397:<syntaxhighlight lang="twig">
 
 
<syntaxhighlight lang="twig">
 
 
{{ image_data|data_uri }}
 
{{ image_data|data_uri }}
  
 
{{ source('path_to_image')|data_uri }}
 
{{ source('path_to_image')|data_uri }}
  
{# ألزِم استخدام نوع امتدادات البريد متعدد الأغراض (MIME)، وعطل تخمين نوعه #}
+
{# وعطل تخمين نوعه (MIME) ألزِم استخدام نوع امتدادات البريد متعدد الأغراض  
 +
#}
 
{{ image_data|data_uri(mime="image/svg") }}
 
{{ image_data|data_uri(mime="image/svg") }}
  
سطر 16: سطر 15:
 
{{ '<b>foobar</b>'|data_uri(mime="text/html", parameters={charset: "ascii"}) }}
 
{{ '<b>foobar</b>'|data_uri(mime="text/html", parameters={charset: "ascii"}) }}
 
</syntaxhighlight>
 
</syntaxhighlight>
لاحظ أن الفلتر <code>data_uri</code> جزء من <code>HTMLExtension</code> وهذا لا يكون مثبتًا افتراضيًا، لذا ثبته أولًا:  
+
لاحظ أن المرشح <code>data_uri</code> جزء من <code>HTMLExtension</code> وهذا لا يكون مثبتًا افتراضيًا، لذا ثبته أولًا:  
 
<syntaxhighlight lang="twig">
 
<syntaxhighlight lang="twig">
 
$ composer require twig/html-extra
 
$ composer require twig/html-extra
سطر 31: سطر 30:
 
$twig->addExtension(new HtmlExtension());
 
$twig->addExtension(new HtmlExtension());
 
</syntaxhighlight>
 
</syntaxhighlight>
لاحظ أن الفلتر لا يجري أي عملية تحقق من الطول عمدًا إذ يعتمد الحد على سياق الاستخدام، ولكن يتم التحقق قبل استدعاء هذا الفلتر.
+
لاحظ أن المرشح لا يجري أي عملية تحقق من الطول عمدًا إذ يعتمد الحد على سياق الاستخدام، ولكن يتم التحقق قبل استدعاء هذا المرشح.
  
 
==الوسائط==
 
==الوسائط==
سطر 38: سطر 37:
  
 
== انظر أيضًا ==
 
== انظر أيضًا ==
* [[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]]
 
== المصادر ==
 
== المصادر ==
* [https://twig.symfony.com/doc/3.x/filters/data_uri.html صفحة الفلتر data_uri من توثيق Twig الرسمي.]
+
* [https://twig.symfony.com/doc/3.x/filters/data_uri.html صفحة المرشح data_uri من توثيق Twig الرسمي]
  
 
[[تصنيف:Twig]]
 
[[تصنيف:Twig]]
 
[[تصنيف:Twig Filters]]
 
[[تصنيف:Twig Filters]]

المراجعة الحالية بتاريخ 06:21، 11 مايو 2021

يولد المرشح data_uri رابطًا تشعبيًا URL باستخدام نظام البيانات المعرَّف في RFC 2397:

{{ image_data|data_uri }}

{{ source('path_to_image')|data_uri }}

{# وعطل تخمين نوعه (MIME) ألزِم استخدام نوع امتدادات البريد متعدد الأغراض 
 #}
{{ image_data|data_uri(mime="image/svg") }}

{# يعمل أيضًا مع النصوص المجردة #}
{{ '<b>foobar</b>'|data_uri(mime="text/html") }}

{# أضف معامِلات أخرى #}
{{ '<b>foobar</b>'|data_uri(mime="text/html", parameters={charset: "ascii"}) }}

لاحظ أن المرشح data_uri جزء من HTMLExtension وهذا لا يكون مثبتًا افتراضيًا، لذا ثبته أولًا:

$ composer require twig/html-extra

ثم ثبت twig/extra-bundle في حالة مشاريع Symfony:

$ composer require twig/extra-bundle

أما غير ذلك فأضف التوسيع صراحة إلى بيئة Twig:

use Twig\Extra\Html\HtmlExtension;

$twig = new \Twig\Environment(...);
$twig->addExtension(new HtmlExtension());

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

الوسائط

  • mime: نوع mime.
  • parameters: أي مصفوفة من المعامِلات.

انظر أيضًا

المصادر