drupal2 Min Read

Twig Templating - Most useful functions and operations syntax

Gorav Singal

May 07, 2020

TL;DR

Quick reference for essential Twig syntax including variable assignment, conditionals, loops, filters, and common operations used in Drupal templates.

Twig Templating - Most useful functions and operations syntax

Introduction

Twig is a powerful template engine for php. Drupal uses it heavily.

Lets look at some of the most useful methods and their syntax.

Setting some value to a variable

{% raw %}
{% set product_title = "Some value" %}
{% endraw %}

Setting some Object value to a variable

If you want to assign value to a variable from some object.

{% raw %}
{% set product_title = "#{paragraph.getTitle()}" %}
{% endraw %}

Strip html tags from rendered string

Say, I have a rendered string and I want to strip html tags from it. And, finally trim it. In this example, you will also see array usage.

{% raw %}
{% set my_code = content.field1[0] | striptags | trim %}
{% endraw %}

Dyanamic assigning value to a variable based on condition

{% raw %}
{% if content.field_usa_code[0] %}
    {% set usa_code = content.field_usa_code[0] | striptags|trim %}
{% endif %}
{% endraw %}

Concatenation of string with variables

{% raw %}
{% set link_india = "https://www.xyz.com/#{india_code}/?param1=#{india_code}" %}
{% endraw %}

Here, I’m using variables inside a string. Take a look at its alternative below.

Concatenation of string with variables

{% raw %}
{% set link_india = "https://www.xyz.com/" ~ (india_code) ~ "/?param1=" ~ (india_code)" %}
{% endraw %}

Complex example using string concatenation with variable with functions

{% raw %}
{% set amazon_link_usa = "https://www.xyz.com/?param1=" ~ (product_title | slice(0,50) | url_encode) ~ "&param2=#{usa_code}" %}
{% endraw %}

Here, I’m trimming the big string to 50 character max. Even if string is small, this code works. And its using another function url_encode to url encode a parameter to http query.

Share

Related Posts

Drupal 8 - How to Theme Form and its Fields with reordering fields

Drupal 8 - How to Theme Form and its Fields with reordering fields

Introduction In this post, we will see how to theme form and its fields…

Drupal 8 - How to create a Page with admin access and create its menu entry in Reports (No Coding)

Drupal 8 - How to create a Page with admin access and create its menu entry in Reports (No Coding)

Introduction I needed a report page, where I wanted to have some information…

Drupal 7 - Code for Exporting all your content nodes in json files

Drupal 7 - Code for Exporting all your content nodes in json files

Introduction When I migrated all of my drupal-7 website to drupal-8, I wrote…

Drupal: How to detect country and redirect to country specific website by using Cloudflare

Drupal: How to detect country and redirect to country specific website by using Cloudflare

Introduction Assume you have a drupal website and using cloudflare. You are…

Drupal - How to rename column of a content type

Drupal - How to rename column of a content type

Introduction You already have a content type with one or more fields in it…

Drupal 8 - How to hide help link About text formats and text format guidelines

Drupal 8 - How to hide help link About text formats and text format guidelines

Problem In drupal textarea field, it was always a pain to see the two links…

Latest Posts

AI Video Generation in 2025 — Models, Costs, and How to Build a Cost-Effective Pipeline

AI Video Generation in 2025 — Models, Costs, and How to Build a Cost-Effective Pipeline

AI video generation went from “cool demo” to “usable in production” in 2024-202…

AI Models in 2025 — Cost, Capabilities, and Which One to Use

AI Models in 2025 — Cost, Capabilities, and Which One to Use

Choosing the right AI model is one of the most impactful decisions you’ll make…

AI Image Generation in 2025 — Models, Costs, and How to Optimize Spend

AI Image Generation in 2025 — Models, Costs, and How to Optimize Spend

Generating one image with AI costs between $0.002 and $0.12. That might sound…

AI Coding Assistants in 2025 — Every Tool Compared, and Which One to Actually Use

AI Coding Assistants in 2025 — Every Tool Compared, and Which One to Actually Use

Two years ago, AI coding meant one thing: GitHub Copilot autocompleting your…

AI Agents Demystified — It's Just Automation With a Better Brain

AI Agents Demystified — It's Just Automation With a Better Brain

Let’s cut through the noise. If you read Twitter or LinkedIn, you’d think “AI…

Supply Chain Security — Protecting Your Software Pipeline

Supply Chain Security — Protecting Your Software Pipeline

In 2024, a single malicious contributor nearly compromised every Linux system on…