Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
TemKa_SD

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

Recommended Posts

Спасибо, вроде работает. А как теперь 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>

Share this post


Link to post
Share on other sites

Используйте

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

вместо

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
$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 замените

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...