Ich habe das Datum aus meinen URLs entfernt. Ich hatte bis jetzt immer gedacht, dass es äußerst sinnvoll wäre, zumindest das Datum in der URL mitzuführen.
Nach ein paar Gesprächen mit meinem Kollegen Martin über URLs musste ich zu dem Schluss kommen, dass es tatsächlich keinen tieferen Sinn hat, wenn man durch solche Dinge die URL künstlich aufbläst. Also habe ich alle meine URLs bis auf den Zusatz „/blog/“ gekürzt.
Was ist mit Google News
„Aber braucht man das nicht, um bei Google News aufgenommen zu werden?“ Nein, braucht man nicht mehr laut dem Google Support, wenn man eine News Sitemap einreicht. Auch aus SEO Gesichtspunkten gibt es eigentlich nur Gründe für eine Verkürzung der URL. Also gibt es keinen Grund mehr, nicht die URLs ganz im Sinne von Verschlichter Dich zu vereinfachen.
Neue URL Struktur definieren
Das Permalinkschema in WordPress befindet sich unter Settings -> Permalinks Das habe ich entsprechend auf /blog/%postname%/ gestellt, damit meiner Artikel die URL https://marc.tv/[Artikel-Titel] bekommen. Schon haben alle Artikel die neue URL Struktur. Das war der einfache Teil.
Alte URLs umleiten
Da die alten URLs natürlich überall verlinkt waren und ich nicht möchte, dass diese Links ins Leere führen, habe ich sie umgeleitet. Das geht am einfachsten direkt über die .htaccess Datei auf dem Server, damit man WordPress damit nicht belasten muss. Hier die RegEx für die URL Rewrite Regel. Diese leitet alles mit dem Muster /blog/[ZAHL]/[ZAHL]/[ZAHL]/titel-des-artikels per 301 „Moved Permanently“ auf /blog/titel-des-artikels um.
RewriteEngine On RedirectMatch 301 /blog/([0-9]+)/([0-9]+)/([0-9]+)/(.*)$ /blog/\
Verlinkte URLs innerhalb von WordPress umschreiben
Das größere Problem ist, dass überall im Inhalt der Artikel und Kommentare die alten URLs verlinkt sind. Das ist natürlich durch die Umleitung in der .htaccess abgefangen worden aber schön ist es natürlich nicht, wenn die eigene Seite auf eine Umleitung verlinkt. Man könnte direkt auf Datenbank per Suchen und Ersetzen und ein paar Regulären Ausdrücken rumpfuschen. Ich habe mich deswegen dazu entschieden, lieber ein WordPress Plugin namens Search Regex zu bemühen. Dort habe ich die für meine URL Struktur passende RegEx eingetragen:
Search Pattern
|marctv.de/blog/(d*)/(d*)/(d*)/|
Replace Pattern
marctv.de/blog/
Haken bei RegEx setzen nicht vergessen!
Dies habe ich für die Tabellen Post Content und Comment Content gemacht um die URLs in Artikel und den Kommentaren zu ersetzen. „Search“ sucht nur nach dem „Search Pattern“ und listet alle Fälle auf. „Replace“ zeigt an, was wie ersetzt wird aber führt den Befehl noch nicht aus. „Replace und Save“ macht dann ernst und ersetzt alle URLs.
Bei Kommentaren funktioniert Search Regex nicht!
Ja, das ist leider richtig. Es gibt irgendwo einen Bug im Plugin den man aber recht einfach umgehen kann. In der Datei /search-regex/view/admin/search.php in Zeile 23 setzt man einfach das Limit auf eine absurd hohe Zahl:
<?php echo $this->select( array( '1000000' => __( 'No limit', 'search-regex' ), '10' => '10', '25' => '25', '50' => '50', 'works' => '100000' ), $limit ) ?>
Das ist natürlich mit der heißen Nadel von hinten durchs Knie und ziemlich billig aber es funktioniert. Solange bis der Plugin-Entwickler endlich diesen nervigen Fehler behebt.
„www“ Subdomain aus der URL entfernen
Wenn man schon mal dabei ist, kann man auch die sinnlose www-Subdomain entfernen. Es macht die URL kürzer und mittlerweile denke ich, dass jeder mitbekommen hat, dass es sich um einer Adresse im World Wide Web handelt – ohne, dass man es an den Anfang der URL schreibt. In WordPress entfernt man unter Settings -> General bei der Site-URL und Domain das „www“. Die Weiterleitung aller URLs passiert wieder in der .htaccess So wird http://www.marctv.de zu https://marc.tv
RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC] RewriteRule ^(.*)$ http://%1/\ [R=301,L]
Fazit
Vielleicht hilft diese Anleitung dem ein oder anderen, der das selbe vor hat wie ich. Wenn man ein bisschen aufpasst, kann eigentlich wenig passieren. Innerhalb weniger Tage Google dann auch schon die Umleitung bemerkt und seinen Index entsprechend angepasst.
Schreibe einen Kommentar