Функция apply_filters () в WordPress - PullRequest
0 голосов
/ 17 мая 2010

Эй, ребята, я действительно расстроен

Я ищу способ вернуть мой слаг в обычный текст, как это делает WordPress

в WordPress есть функция для этого:

apply_filters ('editable_slug', $ slug)

Я ищу во всех связанных файлах, чтобы найти, что делает эта функция, но немного не понял.

, как может знать ypu, сделать слаг из обычного текста очень просто, но после его преобразования для языков Utf-8, таких как арабский, слова будут заменены на нечитаемые юникоды.

например. :

http://localhost/page/%d8%a7%d9%84%d9%84%d9%87

Вы знаете, как эта функция работает в WordPress?

apply_filters ('editable_slug', $ slug)

и как я могу сделать то же самое в моем собственном проекте php?

Ответы [ 2 ]

1 голос
/ 17 мая 2010

Вызовите rawurldecode в форме в процентах - это даст вам текст в кодировке UTF-8. Если кодировка вашей веб-страницы UTF-8, вам просто нужно вызвать htmlspecialchars ($ str, ENT_NOQUOTES, 'UTF-8').

Пример:

$str = rawurldecode('%d8%a7%d9%84%d9%84%d9%87');
echo htmlspecialchars($str, ENT_NOQUOTES, 'UTF-8');
1 голос
/ 17 мая 2010

Проверьте этот вопрос: Unicode-символы в URL-адресах для хорошего фона.

URL-адрес, который вы показываете, в принципе выглядит нормально - это правильное кодированное представление процентов арабских символов, о которых идет речь.

Вы должны иметь возможность отображать их на арабском языке на своей веб-странице. Copy + pasteing предоставит вам URL-кодированную форму, и это хорошо, потому что таким образом ваши постоянные ссылки будут работать и с клиентами, не поддерживающими UTF-8.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...