twig https://drupalweb.ir/ fa twig چیست؟ https://drupalweb.ir/blog/what-twig <span class="field field--name-title field--type-string field--label-hidden">twig چیست؟</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/user/1" typeof="schema:Person" property="schema:name" datatype="">حامد حسینی</span></span> <span class="field field--name-created field--type-created field--label-hidden">د., 08/26/2019 - 10:25</span> <div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>twig در واقع template engine پیش فرض فریم‌ورک سیمفونی است. در قدیم از smarty برای مدیریت رابط کاربری استفاده می‌شد، ولی امروزه با ظهور twig استفاده از smarty توسط خیلی‌ها کنار گذاشته شده است. برای خیلی‌ها سوال پیش می‌آید که چرا بهتره از یک template engine استفاده کرد؟ در واقع الزامی برای این کار در سیمفونی وجود ندارد و می‌شود دستورات رو بدون twig استفاده کرد. ولی استفاده از twig لذت بخش، سریع و امن تر می‌باشد.</p> <p>البته ویژگی‌های مثبت استفاده از twig فقط کوتاه تر بودن دستورات نیست. استفاده از twig به همراه symfony در ساده تر کردن کار‌ها و همچنین کمک به cache بهتر است. سعی کنید استفاده از twig را فرابگیرید در آینده از آن لذت خواهید برد.</p> <p>در ادامه یک قالب  ساده با twig را میبینید .</p> <pre> <code class="language-php"> &lt;ul id="navigation"&gt; {% for item in navigation %} &lt;li&gt;&lt;a href="{{ item.url }}"&gt;{{ item.label }}&lt;/a&gt;&lt;/li&gt; {% endfor %} &lt;/ul&gt;</code></pre> <p>متغیرهای ارسال شده به یک قالب Twig می‌توانند از نوع رشته،‌ آرایه و یا حتی شیء باشند. که برای دستیابی به صفات هر متغیر میتوانید از علامت نقطه استفاده کنید </p> <pre> <code class="language-php">{# 3. Objects #} {# array('employ' =&gt; new employ('AMIB')) #} {{ employ.name }} {{ employ.getName }}</code></pre> <p>یکی از بهترین ویژگی‌های Twig امکان توسعه با استفاده از تگ‌ها، فیلترها و توابع است. </p> <pre> <code class="language-php">&lt;h1&gt;{{ article.title|trim|capitalize }}&lt;/h1&gt; &lt;p&gt;{{ article.content|striptags|slice(0, 1024) }}&lt;/p&gt; &lt;p&gt;Tags: {{ article.tags|sort|join(", ") }}&lt;/p&gt; &lt;p&gt;Next article will be published on {{ 'next Monday'|date('M j, Y')}}&lt;/p&gt; </code></pre> <p>اگر شما قابلیت‌های پیشرفته‌تری نیاز داشته باشید، من به شما <a href="http://twig.sensiolabs.org/" target="_blank">TWIG</a> را پیشنهاد می‌کنم. این تمپلت انجین عالی و مرتب، در بسیاری از برنامه‌ها استفاده می‌شود و پرطرفدار است. مثلا CMS معروف <a href="https://www.dertagmarketing.com/fa/drupal" target="_blank">دروپال (drupal)</a> از TWIG به عنوان template engine خودش استفاده کرده است. با وجود قدرت بالای این تمپلت انجین، یادگیری آن در نیم‌ساعت مسیر است...</p> </div> <div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img loading="lazy" src="/sites/default/files/styles/blog/public/1398-06/twig-svg.jpg?itok=UUW0OFHQ" width="700" height="300" alt="twig چیست؟" title="twig چیست؟" typeof="foaf:Image" class="image-style-blog" /> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-hidden clearfix"> <ul class='links field__items'> <li><a href="/brchsbha/twig" hreflang="fa">twig</a></li> </ul> </div> <div class="field field--name-field-dsth-bndy field--type-entity-reference field--label-hidden field__items"> <div class="field__item"><a href="/dsth-bndy-wblag/drupal" hreflang="fa">drupal</a></div> <div class="field__item"><a href="/dsth-bndy-wblag/symfony" hreflang="fa">symfony</a></div> </div> <section class="field field--name-field-comments field--type-comment field--label-above comment-wrapper"> <h2 class='title comment-form__title'>افزودن دیدگاه جدید</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=294&amp;2=field_comments&amp;3=comment" token="4VttDf3ACNYSgvNVWbSlPgWFXO67XkGH553V37lf8Y4"></drupal-render-placeholder> </section> Mon, 26 Aug 2019 05:55:08 +0000 حامد حسینی 294 at https://drupalweb.ir https://drupalweb.ir/blog/what-twig#comments