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

Правильное отображение русскоязычных значений в доп полях вида перекрёстные гиперссылки

Правильное отображение русскоязычных значений в доп полях вида перекрёстные гиперссылки


Данный хак исправляет неправильное отображение русских слов в дополнительных полях вида перекрёстные гиперссылки, выводимые в краткой и полной новости.

Автор: DomiTori
Версия DLE: любая

Никакой магии, всего лишь определил откуда скрипт берет ссылку в дополнительном поле и поменял кодировку вывода ссылки в новость.

Ищем в файле \engine\modules/show.full.php (в DLE 10.3 это 1336-1337 строки)
if( $config['allow_alt_url'] ) $value3[] = "" . $value2 . "";
else $value3[] = "" . $value2 . "";

В разных версиях DLE содержание строки может быть разным, нас же интересует данный код
urlencode( $value2 )

Меняем два раза значение на
urldecode( $value2 )

И получаем следующее
if( $config['allow_alt_url'] ) $value3[] = "" . $value2 . "";
else $value3[] = "" . $value2 . "";


Далее ищем в файле \engine\modules/show.short.php (в DLE 10.3 это 480-481 строки)
if( $config['allow_alt_url'] ) $value3[] = "" . $value2 . "";
else $value3[] = "" . $value2 . "";

Опять же разных версиях DLE содержание строки может быть разным, нас же интересует данный код
urlencode( $value2 )

Меняем два раза значение на
urldecode( $value2 )

И получаем следующее
if( $config['allow_alt_url'] ) $value3[] = "" . $value2 . "";
else $value3[] = "" . $value2 . "";


Вот и всё. Кому интересно немного информации
urlencode — URL-кодирование строки. Эта функция удобна, когда закодированная строка будет использоваться в запросе, как часть URL, также это удобный способ для передачи переменных другим страницам.
urldecode — Декодирование URL-кодированной строки. Декодирует любые %## кодированные последовательности в данной строке. Символ "плюс" ('+') декодируется в символ пробела.

Кстати можно сделать немножко по-другому, вместо
urldecode( $value2 )

вставить
rawurldecode( $value2 )

Эффект будет таким же, и хоть заменив код таким образом символ "+" не должен меняться на "%20" (пробел), он всё равно меняется. В общем кому как больше нравится ^_^

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


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


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

Авторизация