DLE Редирект внешних ссылок

Рубрика: Хаки для DLE » Хак DLE 11.2, 11.1, 11.0, 10.6, 10.5, 10.4, 10.3, 10.2, 10.1, 10.0, 9.8, 9.7, 9.6, 9.5, 9.4, 9.3, 9.2, 9.0
DLE Редирект внешних ссылок
Для любой версии DLE Редирект внешних ссылок - этот маленький хук позволит все внешние ссылки в новостях изменять на УРЛ типа (sitename/go/?) с добавлением тегов от индексации поисковиков noindex и nofollow.
Автора попросили помочь с внешними ссылками на его прогрессивно развивающимся музыкальном портал с названием SoundSlave под управлением CMS DataLife Engine, где надо было убрать все ссылки ещё в noindex и nofollow, а также сделать редирект с помощью вставки в УРЛ GO типа:
http://sitename/go/?
я взялся помочь :)

Стоит отметить, что хаки для дле можно использовать и на версии dle 10.1, DLE 10.2, dle 10.3, и выше.

Установка хака для дле Redirekt
Итак начнем, для начала открываем файлик:
engine\classes\parse.class.php
и правим его, рекомендую пользоваться notepad++ или другим адекватным редактором ;)
Находим в файле кусок кода:

return "<a href=\"" . $url['html'] . "\" " . $target . ">" . $url['show'] . "</a>" . $url['end'];


и заменяем его на следующее:

if($this->check_home($url['html']))
{
return "<a href=\"".$url['html']."\" ".$target.">".$show."</a>" . $url['end'];
}
else
{
$url['html'] = $config['http_home_url']."go/?". $url['html'];
return "<noindex><a rel=\"nofollow\" href=\"".$url['html']."\" ".$target.">". $url['show'] ."</a></noindex>
" . $url['end'];
}


Далее в корне сайта создаем директорию или папку GO и в этой папке создаем файл index.php, получаем: Ваш домен/GO/index.php
со следующим содержимым:

<?php
if (!empty($_SERVER['QUERY_STRING'])){
$re_addr=$_SERVER['QUERY_STRING'];
header('Location: '.$re_addr);
}
?>


В папку /go/index.php советую добавить файл .htaccess:

DirectoryIndex index.php
RewriteEngine Off


создаем какую-нибудь новость и смотрим на результат, все внешние ссылки будут в noindex и nofollow, а также
http://sitename/go/?http://внешняя ссылка

dle9.com


ВНИМАНИЕ! Изменения можно увидеть только при добавления новой новости с ссылок на другой ресурс.

Для того, чтобы изменения вступили в силу для старых новостей, следует в админ панели движка Утилиты > Перестроение публикаций сделать перестроение новостей.
Хак проверен и работает!

Автор: i-notes
Скрин картинки от пользователя: Karat7

Ну вот и прекрасно, теперь ваш ресурс может спокойно добавлять ссылки на другие сайты и не получит бан от Яши и других поисковиков!
  • 80
Рубрика: DLE хаки » Хак для DLE
Ранее » Для DLE хак Статистика рейтинга новости« Далее Теги [declination=X] [/declination] во всех шаблонах дле
Добавление комментарияОставить комментарий
  • № :27
  • 7 августа 2015 15:55
Хак постави на 10.3, редирект в новостях прекрасно работает, но если к новости можно оставлять комментарии и там публикуют ссылку - редирект в этих комментариях не работает. подскажите плиз как поправить?
  • № :26
  • 16 марта 2015 11:54
Цитата: Андрей
Делал так, но редирект все равно не убрался из ссылок. Бэкап есть, но делал все несколько месяцев назад и с того времени много новых новостей.

у вас два вариант
1. Открыть каждую новую новость до изменения в админке на редактирование новостей в браузере , потом установить старую БД и сохранить каждую новую новость с изменением удаление ссылок. Перед этим сохраните нынешнюю БД.

Таким образом вы добавите все новые новости до изменения с временем и датой

2. открыть БД и посмотреть как ссылки формируются найти элемент к примеру GO и с помощью функции а админ панели дле Найти и заменить вырезать эту функцию из БД в новостях, новости вернуть в прежнее состояние
  • № :25
  • 16 марта 2015 10:35
Делал так, но редирект все равно не убрался из ссылок. Бэкап есть, но делал все несколько месяцев назад и с того времени много новых новостей.
  • № :24
  • 16 марта 2015 06:09
Цитата: Андрей
Подскажите как сделать в обратном порядке. После того как сделал такой редирект, как теперь убрать? Чтоб ссылки опять стали открытыми.

Убрать код из файлов, в админ панели движка Утилиты > Перестроение публикаций сделать перестроение новостей.

А вообще проще было бы если база данных была бы сохранена, всегда следует сохранять перед внесения изменений в файлах дле скрипта, добавлением модулей и хаков.
  • № :23
  • 16 марта 2015 02:17
Подскажите как сделать в обратном порядке. После того как сделал такой редирект, как теперь убрать? Чтоб ссылки опять стали открытыми.
  • № :22
  • 7 января 2015 16:19
все отлично работает. только для каждого доп поля с анкорной ссылкой пришлось делать под каждый сайт на источник:
  • № :21
  • 5 января 2015 17:59
Цитата: Alex

[url=http://ваш домен/go/?[xfvalue_x]][/url]

обратит внимание нужно вписать ваш домен и заменить тег вывода на xfvalue_x на название вашего доп. поля должно получится

Да, спасибо! Я так и сделал ещё вчера. Всё работает!


Интересно, как это у него все работает? В файлах шаблона не работают BB тэги. Я даже засомневался и попробовал ))) А то бы сам так все ссылки из доп полей попрятал. Непонятный момент

сам не пробовал через доп. поле winked но наверное так будет корректней

<a href="http://ваш домен/go/?[xfvalue_x]" ></a>


rel="nofollow" target="_blank" внутрь добавить ещё теги открытия в новом окне и т.д.
  • № :20
  • 5 января 2015 16:48

[url=http://ваш домен/go/?[xfvalue_x]][/url]

обратит внимание нужно вписать ваш домен и заменить тег вывода на xfvalue_x на название вашего доп. поля должно получится

Да, спасибо! Я так и сделал ещё вчера. Всё работает!


Интересно, как это у него все работает? В файлах шаблона не работают BB тэги. Я даже засомневался и попробовал ))) А то бы сам так все ссылки из доп полей попрятал. Непонятный момент
  • № :19
  • 20 октября 2014 13:17
Цитата: Suleyman
Цитата: dle9
Чтобы сделать редирект с ГО для доп поля можно попробовать следующий вариант с этим хаком

в fullstory.tpl добавьте следующий код
[url=http://ваш домен/go/?[xfvalue_x]][/url]


обратит внимание нужно вписать ваш домен и заменить тег вывода на xfvalue_x на название вашего доп. поля должно получится


Да, спасибо! Я так и сделал ещё вчера. Всё работает!

на здоровье
  • № :18
  • 20 октября 2014 13:13
Цитата: dle9
Чтобы сделать редирект с ГО для доп поля можно попробовать следующий вариант с этим хаком

в fullstory.tpl добавьте следующий код
[url=http://ваш домен/go/?[xfvalue_x]][/url]


обратит внимание нужно вписать ваш домен и заменить тег вывода на xfvalue_x на название вашего доп. поля должно получится


Да, спасибо! Я так и сделал ещё вчера. Всё работает!
  • № :17
  • 20 октября 2014 13:09
Чтобы сделать редирект с ГО для доп поля можно попробовать следующий вариант с этим хаком

в fullstory.tpl добавьте следующий код
[url=http://ваш домен/go/?[xfvalue_x]][/url]


обратит внимание нужно вписать ваш домен и заменить тег вывода на xfvalue_x на название вашего доп. поля должно получится
  • № :16
  • 20 октября 2014 13:02
Цитата: dle9

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


Нет, надо попробывать.
Хотя этот вариант мне не подходит.
Потому что хочу управлять ссылками именно через дополнительные поля.
Тогда, проще в шаблоне полной новости прописать к дополнительному полю приставку /go?.
  • № :15
  • 20 октября 2014 12:59
Цитата: Suleyman
3 раза проделывал всё с нуля. Лично у меня на 10.2 хак НЕ работает.
Папка go подписана малыми буквами. Пробую на денвере в процессе создания нового сайта. В БД всего несколько фильмов, поэтому база пока совсем мала. Внимательно менял код в указанных файлах. Новости добавляю и редактирую в админпанели.
Может ли НЕ работать хак, если ссылка на файлообменник находится в дополнительном поле?

Именно доп поле играет роль, т.к. не для него генерируется ссылка с редиректом, вы пробовали просто ссылку в новость добавить и проверить.
  • № :14
  • 20 октября 2014 12:21
3 раза проделывал всё с нуля. Лично у меня на 10.2 хак НЕ работает.
Папка go подписана малыми буквами. Пробую на денвере в процессе создания нового сайта. В БД всего несколько фильмов, поэтому база пока совсем мала. Внимательно менял код в указанных файлах. Новости добавляю и редактирую в админпанели.
Может ли НЕ работать хак, если ссылка на файлообменник находится в дополнительном поле?
  • № :13
  • 20 октября 2014 11:58
Цитата: Mantrik
проблема решена.
нужно редактировать, добавлять новости в стандартном BBCODES. вот почему и не получалось. спасибо за хак.

пожалуйста,
имеется ввиду добавлять/редактировать новость в админ панели движка, а не сайте.
  • № :12
  • 20 октября 2014 11:12
проблема решена.
нужно редактировать, добавлять новости в стандартном BBCODES. вот почему и не получалось. спасибо за хак.
  • № :11
  • 19 октября 2014 20:31
Цитата: Mantrik
все сделал как написано, выполнил все рекомендации а изменений ни каких.
хак работает только когда в ручную к ссылке добавить параметр /go/?.
может какие настройки скрипта движка нужно изменить?

да нет,
после установки только кеш почистил, добавляются новость с ссылками уже с редиректом. При этом ссылки изменяются как для короткой, так и для полной новости.
Если у вас большая База данных, ещё в этом может быть проблема ... были некоторые хаки которые не срабатывали. Можно попробовать открыть на редактировании и сохранить повторно.
  • № :10
  • 19 октября 2014 20:12
все сделал как написано, выполнил все рекомендации а изменений ни каких.
хак работает только когда в ручную к ссылке добавить параметр /go/?.
может какие настройки скрипта движка нужно изменить?
  • № :9
  • 19 октября 2014 20:11
Цитата: Suleyman
Цитата: dle9
Цитата: Suleyman
В версии 10.2 НЕ РАБОТАЕТ!

все работает, чушь не пишите...от версии движка хак не зависит .


Где вы видите чушь!?
Это реальность!

Всё сделал, как описано, и папку назвал маленькими буквами go.
Добавил новость. Ссылки как были открытыми, такими и остались.
Не было бы проблемы, просто так писать не стал бы.
В этом деле далеко не чайник. Не один сайт сделал...

то что вы сделали и как мне неизвестно, но могу сказать у вас, где-то прокол, если есть денвер проверьте на нем, исключите ошибку с хостингом.
В папке
/go/ должны находиться два файла
index.php со своим кодом и .htaccess

Остается только ошибка при замене кода в engine\classes\parse.class.php там начало похоже (если искать по началу кода), строчку менять следует ниже

Не знаю как тут можно ещё ошибиться
  • № :8
  • 19 октября 2014 19:23
Цитата: dle9
Цитата: Suleyman
В версии 10.2 НЕ РАБОТАЕТ!

все работает, чушь не пишите...от версии движка хак не зависит .


Где вы видите чушь!?
Это реальность!

Всё сделал, как описано, и папку назвал маленькими буквами go.
Добавил новость. Ссылки как были открытыми, такими и остались.
Не было бы проблемы, просто так писать не стал бы.
В этом деле далеко не чайник. Не один сайт сделал...
  • № :7
  • 19 октября 2014 18:34
Цитата: Suleyman
В версии 10.2 НЕ РАБОТАЕТ!

все работает, чушь не пишите...от версии движка хак не зависит .
  • № :6
  • 19 октября 2014 18:06
В версии 10.2 НЕ РАБОТАЕТ!
  • № :5
  • 19 октября 2014 16:42
Цитата: Mantrik
здравствуйте.
все сделал как описано выше, создал новость а ссылки так и остались открытыми. Dle 10.3
подскажите в чем проблема?

здравствуйте.
Хак работает сам проверил,
1. Для старых новостей следует сделать перестроение в админ панели дле, добавляется новая ссылка только при добавлении новых новостей.
  • № :4
  • 19 октября 2014 16:35
Цитата: Mantrik
здравствуйте.
все сделал как описано выше, создал новость а ссылки так и остались открытыми. Dle 10.3
подскажите в чем проблема?

здравствуйте.
папку создали с маленькой буквой или большой /GO/index.php надо с маленькой /go/index.php регистр букв имеет значение. пока думаю только в этом месте может быть проблема, GO с большой было написано для выделения...а так хак проверен на Dle 10.3 по сообщению пользователя: Karat7 работает.
  • № :3
  • 19 октября 2014 14:42
здравствуйте.
все сделал как описано выше, создал новость а ссылки так и остались открытыми. Dle 10.3
подскажите в чем проблема?
  • № :2
  • 18 октября 2014 05:09
Цитата: osv
Эта штука похожа на Dude Smart Leech

похожа только без вспыхивающего окна типа
Переход по внешней ссылке

Внимание! Вы собираетесь перейти по внешней ссылке http://...

Администрация сайта не несет ответственности за содержимое сайта и настоятельно рекомендует не указывать никаких своих личных данных, например e-mail и паролей на сторонних сайтах.


и целый модуль Dude Smart Leech 0.4 beta кажется последняя версии устанавливать не нужно
  • № :1
  • 18 октября 2014 04:35
Эта штука похожа на Dude Smart Leech