Meta Tags in eigener Extension setzen

Veröffentlich am: von Andre Lanius

Metadaten sind ein essenzieller Bestandteil moderner Websites, wenn es darum geht, Inhalte für Suchmaschinen und soziale Netzwerke optimal zu präsentieren. Mit den richtigen Metatags kannst du nicht nur das Ranking deiner Seite verbessern, sondern auch die Darstellung deiner Inhalte in den Suchergebnissen oder auf Plattformen wie Facebook und Twitter maßgeblich beeinflussen.

In TYPO3 hast du die volle Kontrolle über Metadaten – auch in deinen eigenen Extensions. Du kannst dynamische Werte setzen, die perfekt auf den jeweiligen Inhalt zugeschnitten sind, oder feste Standardwerte hinterlegen, die in jedem Fall greifen. Egal ob Titel, Beschreibung oder Open-Graph-Tags: Mit TYPO3 kannst du flexibel und effizient arbeiten.

Wir konzentrieren uns auf die Integration direkt im PHP-Controller, damit du schnell und effizient die passenden Metatags für deine Inhalte erzeugen kannst. Mach deine Extension fit für SEO und eine ansprechende Darstellung im Web – ganz ohne Typoscript und ViewHelper!

In deinem Controller musst du nur folgendes eintragen, um in deiner Extension eigene Meta-Tags zu generieren.

<?php


namespace Vendor\Yourext\Controller;

use Psr\Http\Message\ResponseInterface;
use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Core\MetaTag\MetaTagManagerRegistry;


public function showAction(): ResponseInterface
{
    // Descriptions
    $metaTagManager = GeneralUtility::makeInstance(MetaTagManagerRegistry::class)->getManagerForProperty('description');
    $metaTagManager->addProperty('description', 'Hier die Beschreibung, die auch aus einer Datenbankabfrage kommen könnte.');

    // Keywords
    $metaTagManager = GeneralUtility::makeInstance(MetaTagManagerRegistry::class)->getManagerForProperty('keywords');
    $metaTagManager->addProperty('keywords', 'Keyword 1, Keyword 2, Keyword 3');

    return $this->htmlResponse(); 
}

Zusätzlich kannst du auf diesem Weg auch noch eine ganze Reihe anderer Metatags setzen. Hier mal ein kleines Beispiel für die Social-Meta-Tags für Facebook und Twitter.

<?php


namespace Vendor\Yourext\Controller;

use Psr\Http\Message\ResponseInterface;
use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Core\MetaTag\MetaTagManagerRegistry;


public function showAction(): ResponseInterface
{
    $registry = GeneralUtility::makeInstance(MetaTagManagerRegistry::class);
    $metaTagManager = $registry->getManagerForProperty('og:image');
    $metaTagManager->addProperty('og:image', '/path/to/image.jpg', ['width' => 200, 'height' => 200]);

    $descriptionFields = ['description', 'og:description', 'twitter:description'];
    foreach ($descriptionFields as $field) {
            $metaTagManager = $registry->getManagerForProperty($field);
            $metaTagManager->addProperty($field, $author->getDescription());
    }

    return $this->htmlResponse(); 
}

Ähnliche Blogbeiträge

  • 1: Title Tag erstellen in Typoscript und mit Extbase. Der Title-Tag ist ein zentraler Bestandteil jeder TYPO3-Website und spielt eine entscheidende Rolle für SEO und Nutzererfahrung. Ob mit Typoscript für schnelle  ...
    Autor: Andre Lanius
    Verfasst am
    Klicks:

Kommentar schreiben

Captcha

Anzahl der Kommentare: 0