Auch Entwickler brauchen Platz zum Spielen

18. Februar 2010 /

Interne Links in WordPress-Beiträgen zukunftssicher setzen

Das Einfügen von Verlinkungen in den verfassten Beitragstext gestaltet WordPress mehr als komfortabel: Mit Copy & Paste der Internet-Adresse ist das Vorhaben prompt und wirkungsvoll erledigt. Bei Projekten im jungen Stadium des Fortschritts wird erfahrungsgemäß rege und gern experimentiert, optimiert und modifiziert. Im Verlauf der Abstimmung kommt es daher meist zu textlichen Änderungen im Titel und dem Inhalt der Artikel. Aber auch bei Permalinks kann sich die Struktur und die Zusammensetzung jederzeit erneuern – Unordnung ist vorprogrammiert.

Zuweisung eines Links in WordPress
Zuweisung eines Links in WordPress

Dynamisches Konzept für Permalinks
Um die bereits gesetzten, aber im Laufe der Website-Entwicklung umgeformten Links nicht per Hand korrigieren bzw. migrieren zu müssen, werden Verknüpfungen zwischen den internen Blogseiten mithilfe eines simplen Shortcode gesetzt und mit jeweiliger ID angesprochen. Die Zweckmäßigkeit der Lösung: Die Artikel-ID bleibt für immer konstant, kann als Referenz der gelinkten Seite also sorglos verwendet werden – der Hyperlink wird anhand der ID dynamisch ermittelt und ist immer auf dem aktuellsten Stand. Ohne Weiterleitungen, ohne zusätzliche Plugins.

Erweiterung der functions.php im aktuellen Theme

add_shortcode(
  'post',
  create_function(
    '$atts, $data',
    'return "<a href="" .get_permalink($atts[id]). "" title="" .esc_attr(strip_tags(get_the_title($atts[id]))). "">" .$data. "</a>";'
  )
);

Mögliche Anwendung im Beitrag

... Text [post id=9]Verlinkter Blogartikel[/post] Text ...

Nennenswerte Vorteile

  • Link (href) und Titel (title) stets up-to-date, da dynamisch geladen.
  • Keine Migration oder Anpassungen bei URL-Änderung notwendig.
  • Empfehlenswert für kleine bis mittelgroße Websites mit WordPress als CMS.
  • Funktioniert bei Beiträgen, statischen Seiten und Anhängen.

Nachteile des Shortcodes

  • Erzeugt zwei zusätzliche Datenbankabfragen, da Werte neu gelesen werden.
  • Umständlich, da die Ziel-ID gefunden und händisch eingefügt werden muss.
  • Bei der Entfernung des Codes bleiben Shortcode-Einträge sichtbar zurück.
  • Keine interne Benachrichtigung via Pingback.

Voraussetzungen

  • WordPress 2.8

Andere Route zum Ziel?
Als Alternative zum vorgestellten Ansatz wären relative Pfadangaben beim Verlinken der Beiträge durchaus denkbar – nach einem Blogumzug bliebe zumindest die Suchen-Ersetzen-Prozedur auf der Datenbankebene erspart, da sonst die alte Domain im Pfad durch die neue getauscht werden müsste. Wird jedoch die Gliederung der URL im Laufe der Zeit nachträglich korrigiert, so kommt man als Blogger nicht drumherum, „hart“ gesetzte Links aufwendig zu aktualisieren. Des Weiteren kommen die meisten Feedreader mit relativen Angaben der Links im Artikelinhalt nicht klar – Contra für die Relativität also.

Fazit
Zusammenfasend lässt sich festhalten, dass die angesprochene Methode zwar geringfügig umständlicher, „hungriger“ als die von WordPress mitgelieferte Technik ist, dafür aber effizient. Mit einer gesunden Portion Selbstdisziplin kann auf diesem Weg ein internes, pflegeleichtes und vor allen Dingen stabiles Linknetzwerk aufgebaut werden. Ohne Fleiß kein Preis.

P.S.
Übrigens verfolgt Michael Oeser in seinem How-To einen identischen Ansatz.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.