Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Хаки Однотипный внешний вид ссылок по всему сайту

Однотипный внешний вид ссылок по всему сайту


     28.09.2013    Хаки    1255

вопрос
Если в настройках жвижка стоит Включить автоматическую конвертацию ссылок, то все ссылки добавляемые в комменты/личные сообщения становятся кликабельными... Только вид таких ссылок не очень симпатичный особенно если ссылка большая.
Так стандартно выглядит уже добавленная ссылка:
<a href="http://сайт.ru/длинный_предлинный_адрес.html">http://сайт.ru/длинный_предлинный_адрес.html</a>

Хотелось бы сделать однотипный вид ссылок:
<a href="http://сайт.ru/длинный_предлинный_адрес.html">Ссылка</a>

Что нужно дописать в parse.class.php чтобы реализовать?

Ответа пока нет


Комментарии пользователей (1)

Gopr
10

494 | 164

Gopr - 13 октября 2013 23:57 - Юзер

Помогите допилить код
function http_replace($url,$after){
global $config;
$curl = clean_url($url);
if($curl==clean_url($config['http_home_url'])) $link = $url;
else $link = "/engine/go.php?url=".rawurlencode( base64_encode( $url ) );
return "<a href="{$link}" target="_blank">{$curl}</a>".$after;
}

$source = preg_replace( "#((http|https|ftp|ed2k|news|magnet)://.+?)( |$|<)#ie", "http_replace('\1','\3')", $source );

Этот код ставиться в engine/classes/parse.class.php над
if( ! $this->safe_mode ) {

Но появляются ошибки: не открывается страница добавления новостей, при добавлении комментария происходит такая же ошибка...

Есть еще один вариант для engine/classes/comment.class.php так же сопровождается ошибками
Найти
$tpl->set( '{comment}', "<div id='comm-id-" . $row['id'] . "'>" . stripslashes( $row['text'] ) . "</div>" );
Выше вставить
function http_replace($url,$after) {
global $config;
$curl = clean_url($url);
if($curl==clean_url($config['http_home_url'])) $link = $url;
else $link = "/engine/go.php?url=".rawurlencode( base64_encode( $url ) );
return "<a href="{$link}" target="_blank">{$curl}</a>".$after;
}

$row['text'] = preg_replace( "#((http|https|ftp|ed2k|news|magnet)://.+?)( |$|<)#ie", "http_replace('\1','\3')", $row['text'] );

Еще раз поясню суть вопроса. Нужно сделать одинаковые названия ссылок, при включенной конвертации ссылок.
Пример в исходном коде сайта, как есть:
<a href="https://dle-faq.ru/">https://dle-faq.ru/</a>.
Как надо:
<a href="https://dle-faq.ru/">Советы по DLE</a>

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы