logo

How render term field on node template in drupal 9

27
July

How render term field on node template in drupal 9
By: Anonymous | Published On: Thu, 07/27/2023 - 16:56

In Drupal 9, you can render a term field on a node template using the field_view_field() function. This function takes the following parameters:

Entity type: The type of the entity (in this case, it's "node").
Entity: The node object that contains the term field.
Field name: The machine name of the term field you want to render.
Display mode: The view mode you want to use to render the field (e.g., "full", "teaser", "default", etc.).

Here's an example of how to render a term field on a node template:

First, make sure you are working with the correct node template file. It's typically named node--[content-type].html.twig, where [content-type] is the machine name of your content type.

Open the node template file in your theme (located in themes/[your-theme]/templates).

Inside the template file, you can render the term field using the field_view_field() function. For example, if your term reference field is named "field_tags", you can add the following code to render it:

{# Check if the field exists and has a value #}
{% if content.field_tags %}
{# Render the term field using the "default" display mode #} 
{{ content.field_tags }}
{% endif %}

 

In this example, we wrap the rendering of the term field in a conditional statement to check if the field has a value before rendering it.

After making changes to your node template, make sure to clear the Drupal cache to see the updated rendering of the term field on the node pages.

Please note that the actual template file and field names might differ based on your specific setup and field configurations. Always check the field name and the available view modes for the field to ensure you use the correct syntax in your template.

Need Help ?