Главная » Хаки DLE » Хак Редирект с поддержкой исключений

Хак Редирект с поддержкой исключений

  • Хаки DLE

Хак Редирект с поддержкой исключений


Самое радикальное решение борьбы со ссылочным спамом, оставляя кликабельность, это редирект. Данный хак не только ставит редиректы, но и покрывает ссылки редиректа в ноиндекс и нофоллов, таким образом вес вашей страницы не будет уменьшаться из за ссылок например на ту же рапиду. А самая главная фишка, - поддержка сайтов-исключений (дружественных сайтов) на которые редирект ставится не будет.
Обрабатываются все ссылки, которые проходят через парсер - новости, коменты, профиль и так далее. Ссылки вставленые в шаблон вами естественно не трогаются.

Xак применяется для новостей, которые добавляются после установки этого хака, а старые новости надо заново открывать для редактирования и сохранять.
Проверялся на 7.0 и 7.3, пока проблем не возникло,мною тестировались все прерыдущие версии этого хака, все они были доработаны и на данный момент это финальная версия.

Установка...

Находим в каталоге engine/classes/ файл parse.class.php, открываем его нашим редактором найдите следующую строчку кода:
if ($this->filter_mode) $txt = $this->word_filter($txt, false);


вставляем ниже
/*  
Раскодировка сформированного URL-адреса
*/
$txt = preg_replace( "#<!--FFriend--><noindex><a rel="nofollow" href=["'](http://|https://|ftp://|ed2k://|news://|magnet:)?(S.+?)['"].+?".">(.+?)</a></noindex><!--EndFFriend-->#ie" , "$this->decode_friend('\1\2', '\3')", $txt );



Находим
return "<a href="".$url['html']."" ".$target.">".$show."</a>" . $url['end'];



Заменяем
/*
Формирование URL-адреса
*/
if($this->check_home($url['html'])||$this->check_friends($url['html']))
{
       return "<a href="".$url['html']."" ".$target.">".$show."</a>" . $url['end'];
}
else
{
      $url['html'] = $config['http_home_url']."go/?".($url['html']);
      return "<!--FFriend--><noindex><a rel="nofollow" href="".$url['html']."" ".$target.">".$show."</a></noindex><!--EndFFriend-->" . $url['end'];
}



Находим
function word_filter($source, $encode = true) {



вставляем выше
/* 
Функция: "Дружественный URL"
*/    
function check_friends ($url)
{
    global $config;          
    $friend_url = file($config['http_home_url']."engine/friend/friend_url.txt");      
        
    for ($i = 0; $i < count($friend_url); $i++)
    {  
        $value = str_replace("http://", "", trim($friend_url[$i]));
        $value = str_replace("www.", "",    $value);
        $value = explode('/', $value);
        $value = reset($value);
                      
        if ($value == "" ) continue;
        if (strpos($url, $value) === false) continue; else return true;
    }
    return false;
}



Находим
return "[leech=".$url."]".$show."[/leech]"; 
}



Вставляем ниже
/* 
Раскодировка сформированного URL-адреса
*/
function decode_friend($url="", $show="")
{    
    global $config;
    $home_url = $config['http_home_url']."go/?";
        
    $url = str_replace($home_url, "", $url);
    $url = explode ("url=", $url);
    $url = end ( $url );
    $url = rawurldecode($url);
        
    return "[url=".$url."]".$show."[/url]";
}



Сохраняем, заливаем.

в строке
$friend_url = file($config['http_home_url']."engine/friend/friend_url.txt"); 


мы указывали путь к текстовичку, в котором будут дружественные сайты. Изменяем путь и имя по желанию.
Создаем в папке engine подпапку friend, файл friend_url.txt. Не забудьте проверить права на чтение нашей папки и файла с URL.
Заполняем файл friend_url.txt в каждой строке по домену, в формате http://dlepro.ru/

Создаем в корне папку go в ней файл index.php такого содержимого
<?php 
if (!empty($_SERVER['QUERY_STRING'])){
$re_addr=$_SERVER['QUERY_STRING'];
header('Location: '.$re_addr);
}
?>


создаем там же файл .htaccess
содержимого
DirectoryIndex index.php 
RewriteEngine Off


Автор: method
Стоимость: Бесплатно

Ключевые слова по теме Хак Редирект с поддержкой исключений: которые, новости, будет, return, nbspnbspnbspnbspnbspnbspnbspnbspvalue, ссылки, nbspnbspnbspnbspurl, редирект, Находим, этого, href3434url9139html39933434, nbspnbspnbspnbspnbspnbspnbspnbsp, url9139end3993, function, nbspnbspnbspnbsp, URLадреса, финальная, версия, Бесплатно, Стоимость