User Tools

Site Tools

Translations of this page:

ru:tcms_rotation_parameter

Rotation parameter

Rotation parameter

Pass Options

В обычном варианте урлы выглядят как http://domain/gallery/cool/index.html?12x34x567, где цифры в конце это Параметр ротации. Он нужен для учета статистики кликов на тумбы и учета Cell K.

В Thumb CMS есть несоклько вариантов работы с этим:

1. Вы можете использовать старый вариант http://domain/gallery/cool/index.html?12x34x567 и он будет так же работать. В этом случае вы получаете 100% передачу параметра ротации.

2. Передача через AJAX В этом случае, парметр ротации будет передан только в случае если у пользователя включен JS. Клики пользователей без JS засчитаны не будут, что может быть и хорошо.

Как сделать:

Базовый темпелйт должен выглядеть примерно так:

<script type="text/javascript" src="/scj/includes/js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
   $('a[rot_id]').each(function(){
      $(this).bind('click', function(){

         $.get('/scj/cgi/out.php',
            {
               'link': 'images/' + $(this).attr('rot_id'),
               'url': 'counter',
               'click_count': 'rotation_only'
            },
              function(data) {
              }
         );

      });
   });
});

</script>

<thumb num=1-10>
<a href="/gallery/<!--GALLERY_SLUG-->/index.html" target=_blank rot_id='<!--THUMB_LINK-->'> text </a>
<br>
</thumb>

3. Без параметра ротации

В это Rotation - Settings появился параметр Use Magic Rotation Parameter. В этом случае скрипт пытается догадаться где был сделан клик.

В этом случае можно не добавлять переметр ротации вообще.

Итого рассмотрим какие варианты линков могут быть:

  1. http://domain/gallery/cool/index.html - или любой другой реврайт. Тут смысл в том, что в скрипт через реврайт передается $_GET['slug'] = cool - слаг галереи и скрипт может понять кому засчитать клик. Так же сохранена обратная совместимость с вариантом http://domain/gallery/cool/index.html?12x34x567 .
  2. cgi/out.php?url=http://domain/gallery/cool/index.html - тоже самое что и предыдущий вариант - просто редирект на http://domain/gallery/cool/index.html, где опять же есть слаг и скрипту ясно какой галере засчитать клик.
  3. cgi/out.php?url=/gallery/cool/index.html - этот вариант аналогичен варианту 2
  4. cgi/out.php?url=http://domain/gallery/cool/index.html&link=12x34x567 - есть параметр ротации
  5. cgi/out.php?url=http://another_domain/somegallery/at/sponsor/host/index.html - если урл http://another_domain/somegallery/at/sponsor/host/index.html есть в базе, те при добавлении галеры был использован именно этот урл - параметр ротации не нужен. Скрипт может по урлу галеры найти ее в базе и записать клик. тут можно так же добавить параметр ротации в урл, сохраненно для обратной совместимости.
  6. cgi/out.php?url=http://master/gallery/cool/index.html&link=12x34x567 - это вариант если мы хотим слать например со слейва на галеры на мастере. Те у нас есть в базе конкртено урла http://master/gallery/cool/index.html нет, тк это реврайт. При этом скрипт на слейве не получает слаг, те разбор реврайта произойдет только на мастере уже. те в данном случае нужен параметр ротации обязательно.
  7. И для полноты картины cgi/out.php?url=http://some_url/index.html - линк на любой урл через аут. Параметра ротации нет, клик в ротации никому не будет засчитан, клик в трейд будет засчитан всегда.

Итого общее правило: в ротации клик может быть засчитан если выполнено хотя бы одно из условий

  1. если в скрипт приходит &slug=… и по нему ясно что это за галера
  2. если приходит &url=… и этот урл есть в базе со 100% совпадением
  3. если есть параметр ротации
  4. если есть &group_name или &group_id

Ньюанс с вариантом 2 и 3

Если человек кликнул на out.php?url=/blabla/something/other/ то определить какая именно галера скрывается за /blabla/something/other/ можно только если средиректить на эту галеру, сработают реврайты (которые находятся за пределами скрипта) и в скрипт будет передан слаг галеры. Если же мы решаем послать на трейдера, то реврайт не срабатывает = скрипт не знает какая это галера = не может посчитать цтр.

Таким образом для этих линков клик на тумбу можно посчитать только при переходе на галеру = если ским 50 то цтр будет в 2 раза меньше, если ским 0 то вообще кликов у тумб не будет.

Что делать :

  • можно доабвить в урл &slug= что бы скрипт сразу видел какая это галера, условно out.php?url=/blabla/something/other/&slug=something
  • можно попробовать в .htaccess разобрать сам урл и добавить &slug= уже там
ru/tcms_rotation_parameter.txt · Last modified: 2018/06/13 07:04 by admin