it-swarm.com.de

Alle Beiträge umleiten, nachdem die URL-Struktur mit htaccess geändert wurde

Ich suche nach dem regulären Ausdruck .htaccess, der die alte Struktur auf die neue umleitet. Der Grund, warum ich keine Plugins verwenden möchte, ist, dass sie oft unerwartete Ergebnisse haben, wenn WordPress-Updates oder der Autor sie aufgeben. Ich brauche etwas, das 301 lange zuverlässig umleiten.

Alter Permalink:

https://domain.com/%category%/%postname%/

Neuer Permalink:

https://domain.com/%post_id%/

Hinweis: Ich bin mir nicht sicher, ob die Regel dies aber berücksichtigen sollte. Ich verwende auch benutzerdefinierte Post-Typen, die der URL ihren Slug hinzufügen. Die "Kategorie" erscheint für normale "Posts", aber bei CPT ist es nur:

https://domain.com/%example-cpt-slug%/%postname%/

Ich vermute, dass eine gute Regel in beiden Fällen funktionieren könnte, da /% category%/und /% example-cpt-slug%/ etwas zwischen "/ /" sind.

Ich bin mir nicht sicher, wie Sie die POST ID (% post_id% /) als Ziel angeben können.

1
Michael Rogers

In Einstellungen> Permalinks wurde Ihre benutzerdefinierte Struktur auf /%category%/%postname%/ gesetzt, oder?

Jetzt möchten Sie /%post_id%/ einstellen (oder haben Sie es bereits eingestellt), oder?

Soweit ich weiß (und ich habe es auch getestet), leitet WordPress alle Ihre Beiträge (vom Beitragstyp "Beitrag") zu Ihrer neuen benutzerdefinierten Struktur um. Sie brauchen nichts zu tun.

Wenn Sie also die benutzerdefinierte Struktur auf /%post_id%/ festgelegt haben, bedeutet dies, dass jemand, der auf die URL https://domain.com/my-category/my-post-slug zugreift, zu https://domain.com/POST_ID umgeleitet wird.

Nachdem Sie Ihre benutzerdefinierte Struktur geändert haben, wird sie von WordPress auch dann noch korrekt umgeleitet, wenn Sie auch Ihren Post-Slug ändern.

Ich weiß nicht, ab welcher WP -Version dies funktionieren soll, aber ich habe es nur für die Aufzeichnung innerhalb von 4.7 getestet.

Wenn es bei Ihnen nicht funktioniert, lassen Sie es mich wissen und ich gebe Ihnen eine andere Lösung.

Übrigens, ich nehme an, dass sich die URL Ihrer WordPress-Site nicht geändert hat, da Sie in Ihrer Frage gerade domain.com verwendet haben.

0
filipecsweb