Кодировка HTML | Демо-сайт CMS uCoz | Почта

Автоматическое подставление редиректа под внешние ссылки

Бесплатные и интересные решения для сайтов.
Правила форума
1. Темы с названиями Помогите, Как сделать, Хелп, Не могу найти и так далее будут перенесении в мусорку без предупреждения!
2. Любой транс-лит будет удален, так что подумайте стоит ли писать транс-литом.
3. Темы не по тематике этого раздела будут также перенесены в мусорку. (Например по DLE, phpBB, php скриптам и так далее...)
4. Не забываем про Общие правила форума!
Внимание: В этом разделе можно оставлять только готовые скрипты, для вопросов есть раздел Общение!!! :evil: Иначе, получите предупреждение, а потом бан :D .

Автоматическое подставление редиректа под внешние ссылки

Сообщение Draft » 16 апр 2009, 21:28

На днях научился юзать регулярные выражения ( :D ) и написал скриптик для автоматической замены исходящих ссылок при добавлении сообщения на форуме (только на другие сайты). Думаю понравится тем, кто знает какой вред наносят большое кол-во исходящих (внешних) ссылок на поисковые системы.

Установка:
Идем в форум -> Форма добавления сообщения
Ищем там что-то типа
Код: Выделить всё
<input type="submit" id="frF16" name="sbm" style="width:150px;font-weight:bold;" class="postSubmit" value="$SUBMIT_SIGN$" />

Заменяем на
<script type="text/javascript">
// Script by Draft - http://www.softers.ru/
function preposting() {
mtxt=document.getElementById('message').value;
if(mtxt.indexOf('http://')>-1) {
urlreg=/http:\/\/[a-z0-9\S]*[\s]{0,1}/gi;
for(i=0;i<mtxt.match(urlreg).length;i++) {
if(mtxt.match(urlreg)[i].indexOf('softers.ru')==-1) {
urls_regs=mtxt.match(urlreg)[i];
mtxt=mtxt.replace(urls_regs,'http://www.softers.ru/redirect.htm?'+urls_regs);}}
document.getElementById('message').value=mtxt;}
document.getElementById('submit_button').click();}
</script>
<input id="submit_button" style="display:none" name="sbm" type="submit" value="$SUBMIT_SIGN$" /> <input id="sbm_bt" type="button" onclick="preposting()" style="width:150px;font-weight:bold;" class="postSubmit" value="$SUBMIT_SIGN$" />


Синее меняем на свое.
P.S. страницу редиректа делайте сами или берите отсюда.
Пишу скрипты для uCoz под заказ. Стучать в ICQ[/b]
Аватара пользователя
Draft
Модератор
Модератор
 
Автор темы
Сообщения: 722
Возраст: 32
Зарегистрирован: 21 апр 2008, 11:37
Карма: + 24 -
Откуда: Saint :P

Re: Автоматическое подставление редиректа под внешние ссылки

Сообщение Zeppter » 16 апр 2009, 22:30

Изображение
:D :D :D
Аватара пользователя
Zeppter
Генерал-лейтенант
Генерал-лейтенант
 
Сообщения: 1025
Возраст: 32
Зарегистрирован: 08 авг 2008, 22:38
Карма: + 4 -
Откуда: MELITOPOL

Re: Автоматическое подставление редиректа под внешние ссылки

Сообщение Vanofuture » 16 апр 2009, 22:30

Draft писал(а):urlreg=/http:\/\/[a-z0-9\S]*[\s]{0,1}/gi;

хм...я бы сделал так:
Код: Выделить всё
/http:\/\/\S+\s?/ig;

Draft писал(а):function preposting() {

Читаем...
Аватара пользователя
Vanofuture
Супермодератор
Супермодератор
 
Сообщения: 1411
Зарегистрирован: 20 апр 2008, 09:36
Карма: + 48 -

Re: Автоматическое подставление редиректа под внешние ссылки

Сообщение Vanofuture » 16 апр 2009, 22:57

А вообще...
Код: Выделить всё
<script type="text/javascript">
function checksubmit(){ // Vanofuture [xcinema.net]
document.addform.message.value=(' '+document.addform.message.value).replace(/\[url\=(http:\/\/(www\.)?(?!xcinema\.net)\S+)\](.+)\[\/url\]/ig,'[url=http://xcinema.net/redir.html?url=$1]$3[/url]').replace(/\s(http:\/\/(www\.)?(?!xcinema\.net)\S+\s?)/ig,'http://xcinema.net/redir.html?url=$1');return true;}
</script>
Аватара пользователя
Vanofuture
Супермодератор
Супермодератор
 
Сообщения: 1411
Зарегистрирован: 20 апр 2008, 09:36
Карма: + 48 -

Re: Автоматическое подставление редиректа под внешние ссылки

Сообщение info » 28 фев 2011, 22:19

Эмм... А можно ли сделать то же самое, только без этих затрапезных промежуточных страниц при редиректе? Чтобы нажимая на такую внешнюю ссылку-редирект, сразу перенаправляло на другой сайт. И не только для форума, а для любых внешних ссылок сайта.
info
Рядовой
Рядовой
 
Сообщения: 27
Зарегистрирован: 18 ноя 2008, 09:05
Карма: + 0 -


Вернуться в Скрипты и интересные решения

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

cron