• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь Открыть ссылки в новом окне

Статус
В этой теме нельзя размещать новые ответы.

kpromo

Постоялец
Регистрация
8 Май 2010
Сообщения
123
Реакции
14
DLE 8.5.
Средствами BBCode не могу открыть страницу в новом окне. Что нужно поменять в движке, чтоб он автоматом к ссылкам определенного типа дописывал target="_blank"?
 
DLE 8.5.
Средствами BBCode не могу открыть страницу в новом окне. Что нужно поменять в движке, чтоб он автоматом к ссылкам определенного типа дописывал target="_blank"?

Ссылки где надо исправить? В комментариях пользователей?
 
DLE 8.5.
Средствами BBCode не могу открыть страницу в новом окне. Что нужно поменять в движке, чтоб он автоматом к ссылкам определенного типа дописывал target="_blank"?
Если я всё правильно понял, то вот ответ: Движок сам прописывает это автоматом.
Принцип:
Если ссылка начинается с адреса сайта (Пример: _http://site.ru), то target="_blank" не добавляется, если же ссылка отлична от адреса сайта (Пример: _http://drugoisite.ru), то target="_blank" добавляется автоматически.
Сразу скажу, где этот принцип работает.
Файл: /engine/classes/parse.class.php (Строки: с 608 по 624)

Примечание. Нижнее подчёркивание, в приведённых мной примерах ссылок, сделано для форума, чтобы они были не активны.
 
Ссылка идет на внутреннюю страницу с редиректом Для просмотра ссылки Войди или Зарегистрируйся
Что нужно поменять в /engine/classes/parse.class.php, чтоб открывалось по определенному правилу для страниц вида go.php?xxx ?
 
Ссылка идет на внутреннюю страницу с редиректом Для просмотра ссылки Войди или Зарегистрируйся
Что нужно поменять в /engine/classes/parse.class.php, чтоб открывалось по определенному правилу для страниц вида go.php?xxx ?
Т.е. ссылки добавляются через антилич.
Открываешь файл /engine/classes/parse.class.php и находишь там:
PHP:
if( $this->check_home( $url['html'] ) ) $target = "";
else $target = "target=\"_blank\"";

if( $url['leech'] ) {
$url['html'] = $config['http_home_url'] . "engine/go.php?url=" . rawurlencode( base64_encode( $url['html'] ) );

return "<!--dle_leech_begin--><a href=\"" . $url['html'] . "\" " . $target . ">" . $show . "</a><!--dle_leech_end-->" . $url['end'];
} else {
if ($this->safe_mode AND !$config['allow_search_link'])
return "<noindex><a href=\"" . $url['html'] . "\" " . $target . " rel=\"nofollow\">" . $show . "</a></noindex>" . $url['end'];
else		
return "<a href=\"" . $url['html'] . "\" " . $target . ">" . $show . "</a>" . $url['end'];
}
Перед строчкой:
PHP:
return "<!--dle_leech_begin--><a href=\"" . $url['html'] . "\" " . $target . ">" . $show . "</a><!--dle_leech_end-->" . $url['end'];
Вставляешь, вот это:
PHP:
$target = "target=\"_blank\"";
Вот и всё.
p.s. Проверить сейчас негде, но в теории всё должно работать.:)
В любом случае, если что, пиши.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху