Кириллистические адреса на домене .РФ

Всё хорошо, прямо отлично…
Вот только… в одном из плагинов самомписных делаю bbcode ссылки на текущую запись…

function kr_get_links_post(){
    $url =  get_permalink();
    $title = get_the_title();
?>
<ul id="post_links"> 
    <!--- <li><input  type="text" onclick="this.select()" size="50" value='<?=$url?>' /> - ссылка на статью.</li> -->
    <li><input type="text" onclick="this.select()" size="50" value='<a href="<?=$url?>"><?=$title?></a>' /> - HTML код.</li>
    <li><input type="text" onclick="this.select()" size="50" value="<?=$title?>" /> - bbCode.</li>
</ul>
<?
}

Так вот, функция get_permalink();
вместо

<a href="http://Сайт.РФ/обруч-тренажер-«сделай-тело»/">Обруч тренажер «Сделай тело»</a>

Показывает вот это….

<a href="http://Сайт.РФ/%d0%be%d0%b1%d1%80%d1%83%d1%87-%d1%82%d1%80%d0%b5%d0%bd%d0%b0%d0%b6%d0%b5%d1%80-%c2%ab%d1%81%d0%b4%d0%b5%d0%bb%d0%b0%d0%b9-%d1%82%d0%b5%d0%bb%d0%be%c2%bb/">Обруч тренажер «Сделай тело»</a>

Подскажите, как с этим бороться… Прошу прощения за ламерский вопрос…

Решено… вместо

 $url =  get_permalink();

Ставлю вот это….

 $url =  urldecode(get_permalink());

Работает.

Раз уж тихо сам с собой веду беседу… тогда продолжаю.
WP отлично работает с кириллическим доменом.
Тужно только две вещи:
1. http://wordpress.org/extend/plugins/idna/

2. Подправить код wp-includes/classes.php
Вместо:

if ( preg_match("#^$match#", $request_match, $matches) ||
preg_match("#^$match#", urldecode($request_match), $matches) ) {

Поставить:

if ( preg_match("#^$match#", urldecode($request_match), $matches) ||
preg_match("#^$match#", strtolower(rawurlencode($request_match)), $matches) ) {

Последнее необходимо для корректного отображения адресов Страниц. Записи отображаются и без этого…

Оставшаяся нерешенной проблема – как сделать, чтобы работали вложенные страницы?

Anonymous
Отправить
Ответ на: