Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
TemKa_SD

Замена ссылки по всему сайту + куки

Рекомендованные сообщения

Спасибо, вроде работает. А как теперь target="_blank" указать? он сломался ) И скажите по JS коду, всё правильно?

 

		<script type='text/javascript'>
           $( "#ref_link" ).click(function(e) {
               e.preventDefault();
               location.href = $(e.currentTarget).attr('data-ref');
           });
           ;( function($, _, undefined){

           var hash = location.hash.substring(1);

           // Замена ссылки из куков
           var ref_linkCookie = ips.utils.cookie.get( 'ref_link' );

           if ( ref_linkCookie != '' ) {
               $('#ref_link').attr('data-ref', ref_linkCookie);
           }

           // Запись ссылки в куки и замена при первом посещении
           if ( hash != '' && window.location.href.indexOf("?ref=") > -1 ) {
               $('#ref_link').attr('data-ref', 'https://mercury.gl/'+hash);
               ips.utils.cookie.set( 'ref_link', 'https://mercury.gl/'+hash );
           }

           }(jQuery, _));
       </script>

Поделиться сообщением


Ссылка на сообщение

Используйте

window.open($(e.currentTarget).attr('data-ref'), '_blank');

вместо

location.href = $(e.currentTarget).attr('data-ref');

Поделиться сообщением


Ссылка на сообщение

Скажите, а реально вывести информацию о пользователе, чья реферальная ссылка в куках. Т.е идет наличие проверки ссылки в куках, затем ссылка в профиле сравнивается со ссылкой в куках и идет выборка по пользователю, у которого данная ссылка заполнена в профиле.

Поделиться сообщением


Ссылка на сообщение
$member = null;

if (isset(\IPS\Request::i()->cookie['ref_link']) and \IPS\Request::i()->cookie['ref_link'])
{
try
{
	$member = \IPS\Member::constructFromData(\IPS\Db::i()->select('*', 'core_pfields_content', array('field_1=?', \IPS\Request::i()->cookie['ref_link']))->join('core_members', 'core_members.member_id=core_pfields_content.member_id') ->first());
}
catch (\Exception $e) {}
}

field_1 замените

Поделиться сообщением


Ссылка на сообщение

Это же не будет работать в шаблоне? Ну, если даже вставить {{ }}...

Поделиться сообщением


Ссылка на сообщение

В шаблоне нужно все в одну строку писать

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...