AntiSlaed CMS
Вход
Логин: Пароль:Забыли пароль?
Запомнить вас на этом компьютере?
Войти скрытым?

Здравствуйте, Гость ( Вход | Регистрация )

> Внимание!

Адрес нашего форума изменился, теперь мы доступны по адресу antislaed.net. Обновите ссылки и закладки, он больше не изменится.


 
Ответить в данную темуНачать новую тему
> Редирект ссылок для IPB 2.3.3-2.3.5
Z1dan3
сообщение Jun 29 2008, 22:27
Сообщение #1


x_X
Иконка группы

Группа: Дизайнеры

Сообщений: 633
Регистрация:
12.4.2008
Из: :( Украина :(
Пользователь №: 3,219
Спасибо сказали: 229

Вставить ник




Рекомендуется к установке, чтобы спам-посты теряли смысл поднятия PR за ваш счет.
создаем в корне файл redirect.php с кодом:
ЦИТАТА
<?
$arr = array("\n", "\r", "\t", '\\');

$url = getenv('QUERY_STRING');
$url = str_replace($arr, "", $url);

header("location: " . $url);
?>

Ищем в /sources/classes/bbcode файл class_bbcode_core.php
строка:
ЦИТАТА
return ( isset($url['st']) ? $url['st'] : '' ) . "<a href=\"".$url['html']."\" target=\"_blank\">".$show."</a>" . $url['end'];

добавить выше:
ЦИТАТА
if (!strstr($url['html'], "http://ваш_сайт.сом")) $url['html'] = "http://ваш_сайт.сом/redirect.php?" . $url['html'];

далее ищем в файле /sources/lib/post_parser.php
ЦИТАТА
$txt = preg_replace( "#<a href=[\"'](http://|https://|ftp://|news://)?(\S+?)['\"].+?".">(.+?)</a>#" , "\[url=\\1\\2\]\\3\[/url\]" , $txt );


заменить на:
ЦИТАТА
$txt = preg_replace( "#<a href=[\"'](http://|https://|ftp://|news://)?(\S+?)['\"].+?".">(.+?)</a>#" , "\[url=\\1\\2\]\\3\[/url\]" , str_replace("http://ваш_сайт.сом/redirect.php?", "", $txt) );


Не забудьте в коде изменить ваш_сайт.сом
Перейти в начало страницы
 
     Выделите текст перед нажатием цитаты
+Цитировать сообщение
phoenixmagistr
сообщение Jun 30 2008, 00:52
Сообщение #2


Я уже люблю АС
Иконка группы

Группа: [..AS..]

Сообщений: 125
Регистрация:
27.11.2007
Из: Океания, Тувалу
Пользователь №: 1,472
Спасибо сказали: 30

Вставить ник




Z1dan3, а для АС сделаешь такую штучку? Очень полезный хак.
Перейти в начало страницы
 
     Выделите текст перед нажатием цитаты
+Цитировать сообщение
Z1dan3
сообщение Jun 30 2008, 01:10
Сообщение #3


x_X
Иконка группы

Группа: Дизайнеры

Сообщений: 633
Регистрация:
12.4.2008
Из: :( Украина :(
Пользователь №: 3,219
Спасибо сказали: 229

Вставить ник




Постараемся (IMG:http://antislaed.net/style_emoticons/default/wink.gif)
Перейти в начало страницы
 
     Выделите текст перед нажатием цитаты
+Цитировать сообщение
Sunvas
сообщение Jun 30 2008, 01:26
Сообщение #4


Фэнат Stamina-ы
Иконка группы

Группа: Разработчики
Сообщений: 2,470
Регистрация:
6.7.2007
Из: (-: Украина :-)
Пользователь №: 268
Спасибо сказали: 992

Вставить ник




Во-первых:
КОД
$arr = array("\n", "\r", "\t", "\r\n", "\n\r", "\");

Это попросту вызовет ошибку. Правильно так:
КОД
$arr = array("\n", "\r", "\t", '\\');


Во-вторых: мне не нравиться твоя идея тем, что она мешает обычным пользователям копировать ссылки с легкостью: придется править после вставки (или для хранения в блокноте)

В-третьих:
КОД
str_replace("http://ваш_сайт.сом/redirect.php?", "", $txt)

Это не кореектно, лучше уже все заганять под регулярку, иначе существует возможность замены такого текста в другом месте.

Единственное, что понравилось, это конструкция _http://ваш_сайт.сом/redirect.php?http://mail.ru и отлов через QUERY_STRING. Просто некоторые неопытные люди делают вида: _http://ваш_сайт.сом/redirect.php?url=http://mail.ru , а потом оказывается, что их редирект лючит. А в целом - молодец.
Sunvas, Вас 2 раз(а) поблагодарили за это сообщение:
rastaBoy, Z1dan3
Перейти в начало страницы
 
     Выделите текст перед нажатием цитаты
+Цитировать сообщение
Z1dan3
сообщение Jun 30 2008, 01:36
Сообщение #5


x_X
Иконка группы

Группа: Дизайнеры

Сообщений: 633
Регистрация:
12.4.2008
Из: :( Украина :(
Пользователь №: 3,219
Спасибо сказали: 229

Вставить ник




Спасибо,подправил (IMG:http://antislaed.net/style_emoticons/default/smile.gif)
Перейти в начало страницы
 
     Выделите текст перед нажатием цитаты
+Цитировать сообщение

Ответить в данную темуНачать новую тему

3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
 

RSS Текстовая версия Сейчас: 25 November 2024 - 11:36
Хостинг предоставлен NetLevel.Ru   Eleanor CMS