الفرق بين المراجعتين لصفحة: «Twig/data uri»

من موسوعة حسوب
مراجعة: تعديل النص في شيفرة.
تعديل عنوان الصفحة.
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الفلتر currency_symbol في Twig}}</noinclude>
<noinclude>{{DISPLAYTITLE: الفلتر data_uri  في Twig}}</noinclude>
يولد الفلتر <code>data_uri</code> رابطًا تشعبيًا (URL) باستخدام نظام البيانات المعرَّف في RFC 2397:<syntaxhighlight lang="twig">
يولد الفلتر <code>data_uri</code> رابطًا تشعبيًا (URL) باستخدام نظام البيانات المعرَّف في RFC 2397:<syntaxhighlight lang="twig">
{{ image_data|data_uri }}
{{ image_data|data_uri }}

مراجعة 01:17، 28 أبريل 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: أي مصفوفة من المعامِلات.

انظر أيضًا

المصادر