---
title: "Page.meta ViewHelper <f:page.meta>"
manual: "Fluid ViewHelper Reference"
version: "main"
permalink: "https://docs.typo3.org/permalink/t3viewhelper:typo3-fluid-page-meta@main"
source: "Global/Page/Meta.rst"
modified: "2026-09-17T05:12:06+00:00"
---

# Page.meta ViewHelper `<f:page.meta>`

> [!NOTE]
> **New in version 14.0**

Go to the source code of this ViewHelper: [Page\\MetaViewHelper.php (GitHub)](https://github.com/TYPO3/typo3/blob/main/typo3/sysext/fluid/Classes/ViewHelpers/Page/MetaViewHelper.php).

**Table of contents**

-   [Using the <f:page.meta> ViewHelper](https://docs.typo3.org/permalink/t3viewhelper:using-the-f-page-meta-viewhelper@main)
-   [Arguments of the <f:page.meta> ViewHelper](https://docs.typo3.org/permalink/t3viewhelper:arguments-of-the-f-page-meta-viewhelper@main)

The Fluid ViewHelper `<f:page.meta>` allows meta tags to be defined
directly within Fluid templates by leveraging TYPO3's MetaTagManager API.

This allows frontend rendering logic—such as Extbase plugins, Fluid-based
content elements, or site package templates—to control meta tags (for
example descriptions, OpenGraph data, and social media cards) directly in
Fluid templates, without requiring custom PHP logic.

Meta tags can be defined and managed directly in Fluid templates, reducing
or eliminating the need for additional TypoScript configuration in many
common scenarios.

## Using the `<f:page.meta>` ViewHelper

The following examples demonstrate common use cases for the
`<f:page.meta>` ViewHelper in frontend Fluid templates. They show how
meta tags can be defined, extended, and replaced directly in Fluid while
integrating with TYPO3's MetaTagManager system.

### Set meta tags in a detail view template

Meta tags can be defined directly in a Fluid template, for example in a
detail view that renders a single domain object.

**EXT:my_extension/Resources/Private/Templates/Item/Show.fluid.html**

```html
<f:page.meta property="description">{item.description}</f:page.meta>
<f:page.meta property="og:title">{item.title}</f:page.meta>
<f:page.meta property="og:type">article</f:page.meta>

<h1>{item.title}</h1>
<p>{item.description}</p>
```

### Define OpenGraph and Twitter / X Card meta tags

OpenGraph and Twitter / X Card meta tags can be used to control how pages
are displayed when shared on social media platforms.

**EXT:my_extension/Resources/Private/Templates/Item/Show.fluid.html**

```html
<f:page.meta property="og:title">My Article Title</f:page.meta>
<f:page.meta property="og:description">Article description</f:page.meta>
<f:page.meta property="twitter:card">
    summary_large_image
</f:page.meta>
```

### Use sub-properties for complex meta tags

Some meta tags, such as image-related tags, support additional
sub-properties like dimensions or alternative text.

**EXT:my_extension/Resources/Private/Templates/Item/Show.fluid.html**

```html
<f:page.meta property="og:image"
             subProperties="{width: 1200, height: 630,
             alt: 'Article image'}">
    {item.image.url}
</f:page.meta>
```

### Define custom meta tag types

Custom meta tags can be defined by explicitly specifying the meta tag type
attribute.

**EXT:my_extension/Resources/Private/Templates/Item/Show.fluid.html**

```html
<f:page.meta property="author" type="name">John Doe</f:page.meta>
<f:page.meta property="robots" type="name">
    index, follow
</f:page.meta>
```

### Replace existing meta tags

Existing meta tags with the same property can be replaced explicitly when
required.

```html
<f:page.meta property="description" replace="true">
    Override any existing description
</f:page.meta>
```

All examples shown above integrate with TYPO3's MetaTagManager system and
respect configured meta tag managers, priorities, and rendering rules.
This enables a template-centric approach to managing SEO-relevant meta
data that reflects the rendered content accurately.

## Arguments of the `<f:page.meta>` ViewHelper

> **Allows arbitrary arguments**
>
> This ViewHelper allows you to pass arbitrary arguments not defined below
> directly to the HTML tag created. This includes custom `data-` arguments.

-   **property**

    -   *Type:* string
    -   *Required:* true

    The meta property name (e.g. "description", "og:title")

-   **replace**

    -   *Type:* bool
    -   *Default:* false

    Replace existing meta tags with the same property

-   **subProperties**

    -   *Type:* array
    -   *Default:* array (
    )

    Array of sub-properties for complex meta tags (e.g. og:image width/height)

-   **type**

    -   *Type:* string

    The meta type attribute (name, property, http-equiv). If not set, the appropriate manager will determine the type.
