Hyperlinks¶
Überblick¶
Das Add‑on Hyperlinks sorgt für einheitliche Link‑Ausgaben im Frontend und bietet Komfort‑Funktionen wie saubere Ziel‑Attribute, optionale JS‑Sprünge bei Ankern und Ausnahmen für spezielle Links.
Einstellungen¶
Unter Theme‑Optionen → Hyperlinks findest du:
-
Anchor Jumps with JS
Wenn aktiviert, werden Sprünge zu Ankern per JavaScript ausgeführt (z. B. für smoothes Scrollen). -
Ignore Elements
Links mit bestimmten Klassen/Selektoren werden nicht verändert. Standardbeispiele:.brlbs-cmpnt-cb-btn,.page-numbers. -
Ignore Noreferrer
Domains, bei denen dasnoreferrer‑Attribut bei externen Links entfernt werden soll.
Verhalten im Frontend¶
Folgende Regeln gelten automatisch:
- Externe Links erhalten
target="_blank"undrel="noopener nofollow noreferrer". - Mail/Telefon‑Links (
mailto:,tel:) öffnen nicht in neuem Tab. - Interne Links werden sauber auf
/normalisiert, wenn kein Dateityp vorhanden ist. - Ankerlinks können wahlweise per JS gescrollt werden.
Shortcode¶
Du kannst Links auch direkt per Shortcode ausgeben:
[twtheme_hyperlink url="https://example.com" name="Beispiel"]
Wenn name fehlt, wird die URL als Linktext verwendet.
Anwendung im Frontend¶
Links werden automatisch vereinheitlicht: externe Links öffnen in neuem Tab, interne Links werden sauber normalisiert, Anker können per JS scrollen.
Entwicklertipps¶
Inhalte werden vor der Ausgabe automatisch nach Links gescannt und vereinheitlicht. Ignore‑Regeln unterstützen Klassen
(.class), IDs (#id) und Attribute ([data-attr]).
Relevante Funktionen¶
| Funktion | Zweck | Rückgabe |
| -------------------------------------------------------------- | --------------------------------------------------------------------------------- | -------- | ------ |
| twtheme_hyperlink($url, $title = '', $atts = [], $args = []) | Baut einen Link mit den Standard‑Regeln (target/rel, Slash‑Handling, JS‑Anchors). | string | false |
| twtheme_hyperlink_scan($content, $args = []) | Scannt HTML‑Content und ersetzt Links nach den Regeln. | string |
| twtheme_is_url($url) | Prüft, ob ein Wert als URL behandelt werden soll (inkl. relativer Pfade/Anker). | bool |
Twtheme Hooks & Filter¶
| Hook/Filter | Typ | Parameter | Zweck |
|---|---|---|---|
twtheme_option_fields |
Filter | ($form_data) |
Hyperlink‑Optionen in den Theme‑Optionen. |
twtheme_hyperlink_url |
Filter | ($url, $title) |
Ziel‑URL vor Ausgabe anpassen. |
twtheme_hyperlink_atts |
Filter | ($attributes, $url, $title) |
Attribute des Links anpassen. |
twtheme_hyperlink_before_title |
Filter | ($html, $url, $title) |
HTML vor dem Linktitel einfügen. |
twtheme_hyperlink_after_title |
Filter | ($html, $url, $title) |
HTML nach dem Linktitel einfügen. |