Metadaten hinzufügen
Metadaten sind entscheidend für SEO und die Teilbarkeit von Inhalten. In diesem Kapitel besprechen wir, wie Sie Metadaten zu Ihrer Next.js-Anwendung hinzufügen können.
Was sind Metadaten?
In der Webentwicklung liefern Metadaten zusätzliche Informationen über eine Webseite. Diese Daten sind für Besucher der Seite nicht sichtbar. Stattdessen arbeiten sie im Hintergrund, eingebettet im HTML der Seite, normalerweise innerhalb des <head>
-Elements. Diese versteckten Informationen sind entscheidend für Suchmaschinen und andere Systeme, die den Inhalt Ihrer Webseite besser verstehen müssen.
Warum sind Metadaten wichtig?
Metadaten spielen eine bedeutende Rolle bei der Verbesserung der SEO einer Webseite, wodurch sie für Suchmaschinen und Social-Media-Plattformen besser zugänglich und verständlich wird. Richtige Metadaten helfen Suchmaschinen dabei, Webseiten effektiv zu indexieren und ihre Platzierung in den Suchergebnissen zu verbessern. Zusätzlich verbessern Metadaten wie Open Graph das Erscheinungsbild geteilter Links in sozialen Medien, wodurch der Inhalt für Nutzer ansprechender und informativer wird.
Arten von Metadaten
Es gibt verschiedene Arten von Metadaten, die jeweils einen bestimmten Zweck erfüllen. Einige gängige Typen sind:
Titel-Metadaten: Verantwortlich für den Titel einer Webseite, der im Browser-Tab angezeigt wird. Dies ist entscheidend für die SEO, da es Suchmaschinen hilft zu verstehen, worum es auf der Seite geht.
Beschreibungs-Metadaten: Diese Metadaten liefern eine kurze Zusammenfassung des Seiteninhalts und werden oft in den Suchergebnissen angezeigt.
Schlüsselwort-Metadaten: Diese Metadaten enthalten Schlüsselwörter, die mit dem Seiteninhalt zusammenhängen, und helfen Suchmaschinen bei der Indexierung der Seite.
Open-Graph-Metadaten: Diese Metadaten verbessern die Darstellung einer Webseite, wenn sie in sozialen Medien geteilt wird, indem sie Informationen wie Titel, Beschreibung und Vorschaubild bereitstellen.
Favicon-Metadaten: Diese Metadaten verknüpfen das Favicon (ein kleines Symbol) mit der Webseite, das in der Adressleiste oder im Tab des Browsers angezeigt wird.
Metadaten hinzufügen
Next.js bietet eine Metadata-API, mit der Sie Metadaten für Ihre Anwendung definieren können. Es gibt zwei Möglichkeiten, Metadaten zu Ihrer Anwendung hinzuzufügen:
-
Konfigurationsbasiert: Exportieren Sie ein statisches
metadata
-Objekt oder eine dynamischegenerateMetadata
-Funktion in einerlayout.js
- oderpage.js
-Datei. -
Dateibasiert: Next.js bietet eine Reihe spezieller Dateien, die speziell für Metadaten verwendet werden:
favicon.ico
,apple-icon.jpg
undicon.jpg
: Werden für Favicons und Icons verwendetopengraph-image.jpg
undtwitter-image.jpg
: Werden für Social-Media-Bilder genutztrobots.txt
: Enthält Anweisungen für das Crawling durch Suchmaschinensitemap.xml
: Bietet Informationen über die Struktur der Website
Sie haben die Flexibilität, diese Dateien für statische Metadaten zu verwenden oder sie programmatisch in Ihrem Projekt zu generieren.
Mit beiden Optionen generiert Next.js automatisch die relevanten <head>
-Elemente für Ihre Seiten.
Favicon und Open-Graph-Bild
In Ihrem /public
-Ordner finden Sie zwei Bilder: favicon.ico
und opengraph-image.jpg
.
Verschieben Sie diese Bilder in das Stammverzeichnis Ihres /app
-Ordners.
Danach erkennt Next.js diese Dateien automatisch und verwendet sie als Favicon und OG-Bild. Sie können dies überprüfen, indem Sie das <head>
-Element Ihrer Anwendung in den Entwicklertools inspizieren.
Gut zu wissen: Sie können auch dynamische OG-Bilder mit dem
ImageResponse
-Konstruktor erstellen.
Seitentitel und -beschreibungen
Sie können auch ein metadata
-Objekt aus einer beliebigen layout.js
- oder page.js
-Datei einbinden, um zusätzliche Seiteninformationen wie Titel und Beschreibung hinzuzufügen. Metadaten in layout.js
werden von allen Seiten geerbt, die dieses Layout verwenden.
Erstellen Sie in Ihrem Root-Layout ein neues metadata
-Objekt mit den folgenden Feldern:
Next.js fügt den Titel und die Metadaten automatisch zu Ihrer Anwendung hinzu.
Aber was, wenn Sie einen benutzerdefinierten Titel für eine bestimmte Seite hinzufügen möchten? Sie können dies tun, indem Sie ein metadata
-Objekt zur Seite selbst hinzufügen. Metadaten in verschachtelten Seiten überschreiben die Metadaten des übergeordneten Elements.
Zum Beispiel können Sie auf der Seite /dashboard/invoices
den Seitentitel aktualisieren:
Das funktioniert, aber wir wiederholen den Titel der Anwendung auf jeder Seite. Wenn sich etwas ändert, wie der Firmenname, müssten Sie ihn auf jeder Seite aktualisieren.
Stattdessen können Sie das Feld title.template
im metadata
-Objekt verwenden, um eine Vorlage für Ihre Seitentitel zu definieren. Diese Vorlage kann den Seitentitel und alle anderen gewünschten Informationen enthalten.
Aktualisieren Sie in Ihrem Root-Layout das metadata
-Objekt, um eine Vorlage einzubinden:
Das %s
in der Vorlage wird durch den spezifischen Seitentitel ersetzt.
Jetzt können Sie in Ihrer /dashboard/invoices
-Seite den Seitentitel hinzufügen:
Navigieren Sie zur Seite /dashboard/invoices
und überprüfen Sie das <head>
-Element. Sie sollten sehen, dass der Seitentitel jetzt Rechnungen | Acme Dashboard
lautet.
Übung: Metadaten hinzufügen
Nachdem Sie nun etwas über Metadaten gelernt haben, üben Sie, indem Sie Titeln zu Ihren anderen Seiten hinzufügen:
/login
-Seite./dashboard/
-Seite./dashboard/customers
-Seite./dashboard/invoices/create
-Seite./dashboard/invoices/[id]/edit
-Seite.
Die Next.js Metadata-API ist leistungsstark und flexibel und gibt Ihnen die volle Kontrolle über die Metadaten Ihrer Anwendung. Hier haben wir Ihnen gezeigt, wie Sie grundlegende Metadaten hinzufügen können, aber Sie können mehrere Felder hinzufügen, darunter keywords
, robots
, canonical
und mehr. Erkunden Sie gerne die Dokumentation und fügen Sie Ihrer Anwendung alle gewünschten zusätzlichen Metadaten hinzu.