it-swarm.com.de

Konvertieren Sie Bindestrich in Unterstrich in Permalinks

Ich möchte in meinen Permalinks einen Unterstrich anstelle eines Bindestrichs verwenden.

Aktueller Permalink:

www.example.com/2013/01/hello-this-is-a-test-post/

Gewünschter Permalink

www.example.com/2013/01/hello_this_is_a_test_post/

Ich habe versucht einige Lösungen hier in stacexchange erwähnt. Aber sie arbeiteten nicht.

3
Giri

Toscho riet mir so.

Google behandelt - als Word-Trennzeichen, aber nicht _. Sie werden sich verletzen. :)

Er war 100% wahr. Hier ist ein Artikel der es erklärt. Also habe ich die Idee fallen gelassen.

Aber wenn Sie noch nach einer Lösung suchen, ist hier die Antwort.

Beantwortet von diesem Stackoverflow-Benutzer

Jage die folgende Datei: wp-includes/formatting.php

Springe runter zur sanitize_title_with_dashes Funktion. Sie finden diesen Codeabschnitt in:

$title = strtolower($title);
$title = preg_replace('/&.+?;/', '', $title); // kill entities
$title = str_replace('.', '-', $title);
$title = preg_replace('/[^%a-z0-9 _-]/', '', $title);
$title = preg_replace('/\s+/', '-', $title);
$title = preg_replace('|-+|', '-', $title);
$title = trim($title, '-');

Tauschen Sie alle Bindestriche/Bindestriche (-) wie folgt gegen Unterstriche (_) aus:

$title = strtolower($title);
$title = preg_replace('/&.+?;/', '', $title); // kill entities
$title = str_replace('.', '_', $title);
$title = preg_replace('/[^%a-z0-9 _-]/', '', $title);
$title = preg_replace('/\s+/', '_', $title);
$title = preg_replace('|-+|', '_', $title);
$title = trim($title, '_');

Beachten Sie, dass alle Posts, die Sie vor dieser Änderung erstellt haben und auf dem Permalink-Strukturtag %postname% basieren, fehlerhaft sind.

In diesem Fall müssen Sie diesen Beitrag erneut veröffentlichen, damit die Bindestriche durch die Unterstriche ersetzt werden. Oder schreiben Sie sich einfach ein wenig SQL, um sie zu ersetzen.

0
Giri

Ich habe dies anfangs getan, aber bei jedem Update auf Wordpress musste ich die manuelle Änderung erneut vornehmen. Daher habe ich dieses Plugin erstellt, falls es jemandem hilft: http://wordpress.org/plugins/underscores-in-permalinks/

0
Joey Wohleb