Die Seiten-URLs werden durch die Slugs definiert und standardmäßig von der Funktion formatiert und in Kleinbuchstaben geschrieben sanitize_title_with_dashes()
. Diese Funktion wird jedoch über einen Filter aufgerufen, und Sie können den Filter aushängen , damit er nicht aufgerufen wird:
remove_filter( 'sanitize_title', 'sanitize_title_with_dashes' );
Dies zu tun ist wahrscheinlich keine gute Idee, da dadurch die Leerzeichen und andere seltsame Dinge in der Schnecke nicht entfernt werden. Ich schlage vor, Sie kopieren die vorhandene Funktion, entfernen den Teil, der sie in Kleinbuchstaben schreibt, und schließen sie erneut an:
add_filter( 'sanitize_title', 'wpse5029_sanitize_title_with_dashes' );
function wpse5029_sanitize_title_with_dashes($title) {
$title = strip_tags($title);
// Preserve escaped octets.
$title = preg_replace('|%([a-fA-F0-9][a-fA-F0-9])|', '---$1---', $title);
// Remove percent signs that are not part of an octet.
$title = str_replace('%', '', $title);
// Restore octets.
$title = preg_replace('|---([a-fA-F0-9][a-fA-F0-9])---|', '%$1', $title);
$title = remove_accents($title);
if (seems_utf8($title)) {
//if (function_exists('mb_strtolower')) {
// $title = mb_strtolower($title, 'UTF-8');
//}
$title = utf8_uri_encode($title, 200);
}
//$title = strtolower($title);
$title = preg_replace('/&.+?;/', '', $title); // kill entities
$title = str_replace('.', '-', $title);
// Keep upper-case chars too!
$title = preg_replace('/[^%a-zA-Z0-9 _-]/', '', $title);
$title = preg_replace('/\s+/', '-', $title);
$title = preg_replace('|-+|', '-', $title);
$title = trim($title, '-');
return $title;
}