С нами с 07.06.08
Сообщения: 778
Рейтинг: 395
|
Добавлено: 26/10/11 в 14:40 |
Такой вопрос. Есть ли возможность сделать редиректы и в виджете? Те, инклудится в страницу готовый виджет с ссылками на спона, а нужно, чтобы каждая такая ссылка становилась внутренней, но вела бы есст-но при клике на правильный спонсорский адрес. Это элементарно делается со стационарными линками, но в упор не соображу как это осуществить здесь. Заранее спасибо
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55173
Рейтинг: 7770
|
Добавлено: 26/10/11 в 14:44 |
SMYK писал: | Это элементарно делается со стационарными линками |
ну если раскажешь как это делается на статике, я раскажу как сделать это в виджете
|
|
|
|
readmode
С нами с 24.05.06
Сообщения: 797
Рейтинг: 488
|
Добавлено: 26/10/11 в 15:23 |
ну разница где ты линки ставишь то? в виджете, не в виджете?
линка на спонсора
/go/sitename
в папке go лежит htaccess
RewriteEngine On
#redirects to pay sites
Redirect /go/sitename url_to_sitename
|
|
|
|
С нами с 07.06.08
Сообщения: 778
Рейтинг: 395
|
Добавлено: 31/10/11 в 12:18 |
andreich: ну вот почитай выше hellshouter:, так они и ставятся, кк на большинстве ревью
hellshouter: Спасибо, но это не совсем то. Попробую объяснить. Виджет уже идет с сылками вида http://www.paysite.com/ и с этим, как я понимаю, ничего уже не поделать. Вопрос в том можно ли как-то уже на самом блоге сделать так, чтобы эти ссылки выглядели для гугла и юзеров как http://www.MYBLOG.com/go/sitename ну и все как ты раньше расписал, ну или скажем сделать такую "подмену":
http://www.paysite.com/ABCDE... на
http://www.MYBLOG.com/ABCDE... , но есст-но с тем же фактическим адресом после клика
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55173
Рейтинг: 7770
|
Добавлено: 31/10/11 в 12:23 |
SMYK: ммм... ты имеешь ввиду виджеты которые дает спонсор ?
можно пример такого виджета
|
|
|
|
С нами с 07.06.08
Сообщения: 778
Рейтинг: 395
|
Добавлено: 31/10/11 в 12:26 |
Как оперативно ответил))) Да виджет от Амазона например с его топ продуктами
|
|
|
|
С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538
|
Добавлено: 31/10/11 в 12:35 |
Напиши как ты его подключаешь к блогу. Копипастишь в текстовый виджет в админке блога? Или руками в файлы темы? И уточни, что скрывается под "ABCDE". Короче: формализуй задачу.
|
|
|
|
С нами с 07.06.08
Сообщения: 778
Рейтинг: 395
|
Добавлено: 31/10/11 в 12:48 |
|
|
|
|
readmode
С нами с 24.05.06
Сообщения: 797
Рейтинг: 488
|
Добавлено: 31/10/11 в 13:07 |
add_filter надо заюзать, думаю Як сейчас напишет
а линки в виджете все разные? закопипасти сюда код своего виджета.
UPD. посмотрел сам, я думаю хер получится, так как ты вставляешь код туда(который исполняет браузер), который при исполнении уже берет контент(в т.ч. и урлы) от амазона(все это без участия ВП уже).
p.s. ссылки на такие домены как амазон, это вроде не так уж и плохо...
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55173
Рейтинг: 7770
|
Добавлено: 31/10/11 в 14:59 |
ХМ ... тут видать всетаки задача для прогера
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55173
Рейтинг: 7770
|
Добавлено: 31/10/11 в 15:15 |
hellshouter писал: | p.s. ссылки на такие домены как амазон, это вроде не так уж и плохо... |
очень грамотное замечание
|
|
|
|
С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538
|
Добавлено: 31/10/11 в 18:41 |
Проверено с виджетом The Top Products - работает. Не знаю будет ли работать с другими виджетами амазона.
В header.php, в секцию HEAD добавить
Код: | <script>
function foo() {
if( ! document.getElementById( 'amzn_popup_div' ) ) {
window.setTimeout( foo, 1000 );
return;
}
bar();
}
function bar() {
var go_url = '<?php echo str_replace( 'http://', '', esc_url( home_url( '/go/' ) ) ); ?>';
var links = document.getElementById( 'wdgt_brdr' ).getElementsByTagName( 'a' );
for( i in links ) {
if( links[ i ].href ) {
links[ i ].href = links[ i ].href.replace( "http://", "http://" + go_url );
if( links[ i ].onmouseover )
links[ i ].setAttribute( 'onmouseover', links[ i ].getAttribute( 'onmouseover' ).replace( /href%3D%2(2|7)http%3A\/\//g, "href%3D%2$1http%3A//" + go_url ) );
}
else if( links[ i ].onclick )
links[ i ].setAttribute( 'onclick', links[ i ].getAttribute( 'onclick' ) + 'bar();' );
}
}
window.onload = foo;
</script> |
В корне создать файл redirect.php
Код: | <?php header( 'Location:'.str_replace( '/go', 'http:/', $_SERVER[ 'REQUEST_URI' ] ) ); ?> |
В корне создать папку go и положить в неё файл .htaccess
Код: | <IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /go/
RewriteRule ^(.+) /redirect.php/$1 [L]
</IfModule> |
|
|
|
|
С нами с 07.06.08
Сообщения: 778
Рейтинг: 395
|
Добавлено: 04/11/11 в 13:00 |
Че-то не пришло уведомление об ответах, а тут люди столько всего полезного написали Спасибо огромное Yacc, ну и всем остальным тоже Будем пробовать
|
|
|
|