Real CTR

duhless
Posts: 172
Joined: Thu Oct 30, 2014 4:47 pm

Real CTR

Post by duhless »

давайте обсудим возможность добавить в смарт возможно учета просмотров по фактическому факту просмотра тумбы. так будет более точный цтр
так как часто просматривают только верхние пару рядов тумб и закрывают сайт а просмотр пишется всем тумбам на странице
johnyman
Posts: 226
Joined: Mon Aug 26, 2013 3:33 pm

Re: Real CTR

Post by johnyman »

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

хотя, конечно, я бы тоже ЗА, чтобы считать показы только реально показанным тумбам, как это реализовать это уже хз
admin
Site Admin
Posts: 37994
Joined: Wed Sep 10, 2008 11:43 am

Re: Real CTR

Post by admin »

сейчас мы делаем условно

1 запрос к серваке
1 запрос к базе update DB set show = shows + 1 where тумбы на странице

в вашем варианте, например 200 тумб на странице и видно 20 на 1 скролл итого получается 10 запросов к серваку и 10 к базе что б сделать тоже самое

Что же мы получаем в замен?

теоретически лучше цтр, но чем он лучше Cell k?

И чем ваш варинат отличается от инфинитискрол и тому подобных?
Don't forget to run script update
duhless
Posts: 172
Joined: Thu Oct 30, 2014 4:47 pm

Re: Real CTR

Post by duhless »

1) необязательно при каждом просмотре ломиться в базу - можно просто копить статистику например во временном файле и раз в N времени переносить эту статистику в бд

2) cell k работает не совсем корректно тк сейчас везде и у всех респонсив верстка и коэффицент по ячейкам неточный

3) И чем ваш варинат отличается от инфинитискрол и тому подобных?
инфинити работает некорректно (повторяющиеся тумбы и тд и тп) и самое главное - гугл не индексирует ссылки которые внутри инфинити(только первый блок)
admin
Site Admin
Posts: 37994
Joined: Wed Sep 10, 2008 11:43 am

Re: Real CTR

Post by admin »

1. оно и сейчас копится именно так, но станет больше запросов к серваку в любом случае, сложно это отрицать

2. большие сомнения что будет большая разница, но ок, принимаем в "за"

3. повторяющиеся надо разбираться где именно, а гугл - вопрос, по-вашему получается что он не индексирует любые аякс сайты, что явно не так


но вывод из этого какой: сделать не вопрос, но часть которая будет смотреть что показало во view port понятно будет на JS, для многих даже открыть developer console - это уже значит быть програмистом, поэтому по предыдущему опыту: в дефолтном варианте JS вариант подсчета не будет работать, юзер где-то накосячит в JS и виноват будет скрипт\суппорт и тп.

поэтому я делаю гейт куда вы постите ИД тумб которым надо засчитать просмотры, а JS который постит в этот гейт вы занимаетесь самостоятельно, идет?
Don't forget to run script update
duhless
Posts: 172
Joined: Thu Oct 30, 2014 4:47 pm

Re: Real CTR

Post by duhless »

да отлично!!
admin
Site Admin
Posts: 37994
Joined: Wed Sep 10, 2008 11:43 am

Re: Real CTR

Post by admin »

В целом получается все просто

1. к реврайтам добавляем

&dont_count_thumb_shows=true

это не будет считать показы тумбам


2. делаем скрипт который пишет показы


условно scj/bin/count_shows.php


<?php
require('../includes/prepare.php');

foreach ($_POST['thumb_ids'] as $thumb_id) {
db_query("UPDATE rot_gallery_stats1 SET current_shows = current_shows + 1 WHERE thumb_id = " . (int) $thumb_id);
}



думаю тут в 3х строках все ясно что происходит


3. в темплейте <!--THUMB_ID--> - ид тумб , собираем их как угодно и делаем пост на scj/bin/count_shows.php с $_POST['thumb_ids'] списком тумб


вроде как все ясно и прозрачно?
Don't forget to run script update
duhless
Posts: 172
Joined: Thu Oct 30, 2014 4:47 pm

Re: Real CTR

Post by duhless »

да конечно
duhless
Posts: 172
Joined: Thu Oct 30, 2014 4:47 pm

Re: Real CTR

Post by duhless »

и выключаем use/recalculate CELL K
admin
Site Admin
Posts: 37994
Joined: Wed Sep 10, 2008 11:43 am

Re: Real CTR

Post by admin »

да
Don't forget to run script update
Post Reply