Externe Links in einem neuen Tab öffnen
@nera-static/plugin-link-attributes verarbeitet dein gerendertes HTML nach und fügt
ausgehenden Links Attribute hinzu — sodass jeder externe Link sicher in einem neuen Tab öffnet,
ohne dass du das Markdown anfassen musst.
1. Installieren
npm install @nera-static/plugin-link-attributes
Kein Template zum Veröffentlichen — dieses Plugin transformiert nur Inhalt.
2. Konfigurieren
config/link-attributes.yaml listet die hinzuzufügenden Attribute auf:
attributes:
- target="_blank"
- rel="noopener noreferrer"
Das Plugin zielt nur auf Links, deren href mit http oder www beginnt, sodass deine
internen Links (/docs/...) unberührt bleiben. Das rel="noopener noreferrer" ist es
wert, beibehalten zu werden — es schließt die tab-nabbing-Lücke, die ein bloßes target="_blank" öffnet.
3. Der eine Haken: Layout-Links
Das Plugin schreibt Links innerhalb deines Markdown-Inhalts um, nicht Links, die du direkt in Pug-Layouts schreibst (ein "GitHub"-Button im Header, ein Footer-Link). Füge dieselben Attribute bei diesen von Hand hinzu:
a.site-header__cta(href=app.repo_url, target="_blank", rel="noopener noreferrer") GitHub
Rendere, und jeder ausgehende Link — im Inhalt und in deinem Layout — öffnet in einem neuen Tab. Diese Website macht genau das; probiere einen beliebigen GitHub-Link aus.
Node-Hinweis: Dieses Plugin verwendet cheerio unter der Haube, daher benötigt es Node ≥ 20.18.1 zum Bauen. Es betrifft deine Besucher nicht — die Ausgabe ist einfaches HTML.