8Dle
Авторизация

Исправление некорректности ссылок на облако тегов

Совсем недавно заметил что ссылки из Яндекса на слова в облаке тегов DLE некорректны. Оказалось это ошибка не движка а я бы сказал выпендреж Яндекса-проявление имперских амбиций.
Првиеду пример ошибки:
Адрес из облака тегов DLE (если у вас кодировка движка windows-1251) вида:
http://vashsaite/tags/%ED%EE%E2%EE%F1%F2%E8/

в Яндексе отображаются как
http://vashsaite /tags/новости/

после клика по ним браузер переводил их в вид
http://vashsaite /tags/%D0%BD%D0%BE%D...81%D1%82%D0%B8/

И движком такой адрес воспринимаеться как неверный и выдаеться ошибка о несуществующей странице.
Чтобы избавиться от такой ошибки я написал для своего движка версии DLE 8.5 фиксу:
Надо отредактировать файл engine.php движка, лежащий по адресу:
Корневая папка вашего сайта /engine/engine.php
Найти в нем строчку

if (isset ( $_SESSION['dle_direction_tags'] )) $news_direction_by = $_SESSION['dle_direction_tags'];


и после нее вставить код:

$s=$tag;
$s=urlencode($s); // в некоторых случаях - лишняя операция (закоментируйте)
$res='0';
$j=strlen($s);
$s2=strtoupper($s);
$s2=str_replace("%D0",'',$s2);
$s2=str_replace("%D1",'',$s2);
$k=strlen($s2);
$m=1;
if ($k>0){
$m=$j/$k;
if (($m>1.2)&&($m<2.2)){ $tag=iconv("UTF-8", "WINDOWS-1251", $tag); }
}


Теперь все ссылки будут восприниматься вашим сайтом как существующие!
Данный хак будет работать на всех версиях DLE начиная от 8.X до 9.3 включительно. Возможно будет работать и на более старых, но там я уже не проверял.
К стати, этот фикс был замечен разработчиками DLE и исправлен в DLE 9.4, почитать можно тут (пункт 38).

Жмите на Кнопу ниже, или подписывайтесь!


Читайте также
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Анкера, саморезы, дюбели, специальный крепеж
proma-msk.ru


Dle это движок который изначально проектировался для создания новостных сайтов, но по мере своего развития движка значительно расширил свою функциональность и стал универсальным средством разработки и сопровождения сайтов и блогов различной направленности и тематики. По сравнению с другими бесплатными (и некоторыми платными) CMS системами движок dle обладает довольно обширными возможности.

Авторизация