WordPress Слизень Умлаут

У меня есть 2 проблемы, связанные друг с другом!

Как заставить слагов работать на красивые URL-адреса, такие как: ä, ü, ö, â, á или то, что там когда-либо существует.

Я не хочу, чтобы они переписали это! Я действительно хочу заставить это работать с этим .. Единственный способ, которым я нашел, был устаревший плагин, названный 123Echt Laut, .. он все еще работает, но я предпочитаю иметь что-то современное, или код php, который заставляет это работать не переписывая его, например, из ae! Я хочу, чтобы ä отображалось в URL как ä!

Кроме того, я хочу получить этот слизень .. что я нашел с помощью Google, это:

?php global $post;
$post_slug=$post->post_name;?>

Я хотел, чтобы получить слово: Fünkel
Я получил: f% c3% bcnkel

1

Решение

Это, вероятно, дубликат эта почта хотя этот находится на WordPress Stack Exchange. На самом деле, этот вопрос также должен быть опубликован там, поскольку технически это вопрос WordPress. Это, как говорится, вот ответ размещен там, который я думаю, что вы ищете.

remove_filter( 'sanitize_title', 'sanitize_title_with_dashes');
add_filter( 'sanitize_title', 'restore_raw_title', 9, 3 );
function sweURLtoCHAR($text)
{
$url=array(
"%C3%84","%C3%A4",
"%C3%9C","%C3%BC",
"%C3%96","%C3%B6",
"%C3%82","%C3%A2",
"%C3%81","%C3%A1");
$char=array(
"Ä","ä",
"Ü","ü",
"Ö","ö",
"Â","â",
"Á","á");
$str = str_replace($char,$url,$text);
$str_new = str_replace(" ", "", $str);
return strtolower($str_new);
}
function restore_raw_title( $title, $raw_title, $context ) {
if ( $context == 'save' )
return sweURLtoCHAR($raw_title);
else {
$title_new = str_replace(" ", "", $title);
return strtolower($title_new);
}
}

редактировать: О, и чтобы получить «fünkel» из «f% c3% bcnkel», используйте urldecode (). И если уж на то пошло, если подумать, вы можете заменить это sweURLtoCHAR функция с чем-то вроде этого (не проверено):

function sweURLtoCHAR($text)
{
$str = urldecode($text);
$str_new = str_replace(" ", "", $str);
return strtolower($str_new);
}
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]