Trick # 548 | Dieser Beitrag beinhaltet 535 Wörter. – Geschätzte Lesezeit: ca. 3 Minuten.
Schlagwörter (Tags) sind ein wesentlicher Bestandteil, um Inhalte auf einer WordPress-Website besser zu organisieren und die Navigation für User zu vereinfachen. Doch meist werden die Schlagwörter in den Lauftexten der Beiträge nicht mit den entsprechenden Tag-Archiven verlinkt. Dieser Beitrag zeigt, wie Sie mit einem einfachen PHP-Snippet Schlagwörter in Texten automatisch verlinken können.
Der folgende PHP-Code ist so ausgelegt, dass er nur in Wordprtess-Beiträgen, nicht aber in -Seiten, sucht. Es wird ausserdem nur das jeweils erste Schlagwort verlinkt – wenn also mehrere Treffer enthalten sind, wird nur dem ersten ein Link auf die Tag-Archivseite zugeteilt. Der Code schreibt ausserdem nichts in die WordPress-Datenbank und wirkt ausschliesslich im Frontend.
Kopieren Sie den PHP-Code und fügen Sie ihn in die Datei funtions.php Ihrer WordPress-Website ein – im Backend unter Design/Theme-Datei-Editor:
// Schlagworte in Beiträgen automatisch mit dem entsprechenden Tag-Archiv verlinken
function auto_link_post_tags($content) {
// Nur im Frontend und nur bei Beiträgen
if (is_admin() || !is_singular('post')) {
return $content;
}
// Alle Tags abrufen
$tags = get_tags();
if ($tags) {
foreach ($tags as $tag) {
// Überprüfen, ob das Tag im Content existiert
$tag_name = $tag->name;
$tag_link = get_tag_link($tag->term_id);
// Verlinkung hinzufügen
// Vermeidung von mehrfacher Verlinkung und bereits existierenden Links
$content = preg_replace(
'/\b(' . preg_quote($tag_name, '/') . ')\b(?!([^<]*>))/i',
'<a href="' . esc_url($tag_link) . '" class="auto-tag-link">$1</a>',
$content,
1 // Nur die erste Instanz verlinken
);
}
}
return $content;
}
add_filter('the_content', 'auto_link_post_tags');
Der vorgestellte PHP-Code durchsucht die Beiträge nach Schlagwörtern und verlinkt die ersten Vorkommen dieser Schlagwörter automatisch mit den entsprechenden Tag-Archiven. Dies verbessert nicht nur die Benutzererfahrung, sondern kann auch die interne Verlinkung und damit die Suchmaschinenfreundlichkeit verbessern.
Ein besonderes Goodie: Den Links wird automatisch die CSS-Klasse «auto-tag-link» hinzugefügt. Wenn Sie möchten, können Sie also die Schlagwort-Links stylen. Dafür benötigen Sie den folgenden CSS-Code, den Sie dem Stylesheet (unter Design/Customizer/Zusätzliuches CSS) hinzufügen können:
.auto-tag-link {
color: red;
text-decoration: underline;
}
Natürlich können Sie auch diesen CSS-Code nach Belieben anpassen.
Werbung


