Blogpost Permalinkstruktur bei WordPress nachträglich ändern

Bei einer meiner Webseiten hatte ich die Problematik, dass bei WordPress in der Permalinkstruktur die Datums-Slugs eingestellt waren. WordPress stellt dies gerne automatisch ein. Es ist aber generell so, dass man diese Art der Permalinkstruktur besser vermeiden sollte, da die Blogposts spätestens nach einem Jahr veraltet sind, wenn die URL-Struktur das Jahr beinhaltet. Außerdem werden die Permalinks der Blogbeiträge künstlich verlängert und es sieht auch einfach scheußlich aus.

Arbeiten mit der .htaccess Datei

Sogenannte Redirects funktionieren bei Internetseiten generell immer mit einer .htaccess Datei. Unabhängig von einer WordPress-Installation wird also die Änderung über die .htaccess gesteuert. Wenn man nun die Permalinkstruktur bei WordPress in den Einstellung hier ändert.

Dann resultieren alle Blogbeiträge und alle Links dorthin aus der Vergangenheit, die diese alte Permalinkstruktur noch beinhalten, in einem 404-Fehler, da sich die Ressource ja geändert hat.

Beispiel zur Anschaulichkeit

Ein Beispiel: Eine Webseite verlinkt eine Affiliatewebseite auf einen Blogbeitrag https://www.fertilitaetsmonitor.org/2017/09/11/was-muss-ich-essen-um-schwanger-zu-werden/.

Heute lautet der Permalink für diese Ressource aber https://www.fertilitaetsmonitor.org/was-muss-ich-essen-um-schwanger-zu-werden/. Der Browser/Server weiß aber nicht, dass die URL mit den Jahreszahlen nun die neue Ressource ist und meldet einen 404-Fehler. Das ist zum einen schlecht, weil dann die Linkpower nicht richtig durchgeroutet ist und zum anderen für die Benutzer, da diese ihre Inhalte nicht mehr ordentlich angezeigt bekommen.

Generelle Regel in die .htaccess überführen

Um nun Zeit zu sparen und nicht jeden einzelnen Blogbeitrag anpassen zu müssen (hierfür gibt es beispielsweise auch WordPress-Plugins wie Redirection), gibt es Standardregeln, die man nun in die .htaccess Datei eintragen kann, damit alten Links zu allen Blogbeiträgen mit den Datums-Slugs wieder ohne 404-Fehler angezeigt werden.

Generelle Regel für die .htaccess erstellen

Hierfür gibt es je nach euren Permalinkeinstellungen ein Tool von Yoast. Yoast ist ein Plugin für WordPress das eigentlich für Suchmaschinenoptimierung gedacht ist. Ich kann es aber wirklich empfehlen, da man hier beispielsweise auch die .htaccess Datei anpassen kann unter:

https://yoast.com/research/permalink-helper.php

Nun aber zu den einzelnen Permalinkeinstellungen. Yoast bietet auf seiner Webseite/Blog einen sogenanntes „Permalink-Tool“ an. Denn je nachdem wie vorher eure Permalinkeinstellung war, muss auch entsprechend die .htaccess Datei verändert werden.

Da meine Affiliatewebseite die Permalink-Einstellungen auf dem Format, „Monat & Name“ hatte, musste ich dann bei dem Yoast „Permalink-Tool“ auch genau dies einstellen. Heraus kommt dann folgende Zeile:

RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(?!page/)(.+)$ https://www.fertilitaetsmonitor.org/$4

Je nachdem wie eure Webseite lautet muss natürlich dann „https://www.fertilitaetsmonitor.org“ ersetzt werden mit eurer Seite. Die dann an den Anfang der .htaccess Datei (bestenfalls mit dem von mir oben beschriebenen Weg über das Yoast-Plugin) hinzugefügt wird. Et voila, die Permalinkstrukur für alle Beiträge des Blogs wurde innerhalb von Minuten angepasst.

Leave a Comment:

Lesen Sie den vorherigen Eintrag:
Der Blog wird wiederbelebt

Viele Jahre sind vergangen seit ich diesen Blog ins Leben gerufen habe. Genauer gesagt 6 Jahre ist es her, seit...

Schließen