Modul pro rozpoznání klíčových slov z příchozí url na můj eshop (např. ze ZBOZI.CZ uživatel dá hledat nějaké zboží a pak klikne na náš zobrazený odkaz) a Presta (v. 1.2.5) rozpozná jen když je v odkazující URL adrese uvedená proměnná pro hledání (podle nastavení v AdminSearchEngines) "q=" za"&" a ne za "?":
...http://www.zbozi.cz/?q=keyword .... nerozpozná "keyword"
...http://www.zbozi.cz/?typ=nabidky&q=keyword .... rozpozná "keyword" a uloží do databáze a je vidět ve statistice...
Koukal jsem i na novější verze Presty (1.4.xx, 1.5.3.x) a kod funkce getKeywords je v jádru stejný....
function getKeywords($url)
{
if (!Validate::isAbsoluteUrl($url))
return false;
$parsedUrl = parse_url($url);
$result = Db::getInstance()->ExecuteS('SELECT `server`, `getvar` FROM `'._DB_PREFIX_.'search_engine`');
foreach ($result as $index => $row)
{
$host =& $row['server'];
$varname =& $row['getvar'];
if (strstr($parsedUrl['host'], $host))
{
$kArray = array();
preg_match('/[^a-z]'.$varname.'=.+\&'.'/U', $parsedUrl['query'], $kArray);
if (!isset($kArray[0]) OR empty($kArray[0]))
preg_match('/[^a-z]'.$varname.'=.+$'.'/', $parsedUrl['query'], $kArray);
if (!isset($kArray[0]) OR empty($kArray[0]))
return false;
$kString = urldecode(str_replace('+', ' ', ltrim(substr(rtrim($kArray[0], '&'), strlen($varname) + 1), '=')));
return $kString;
}
}
}
Jak to upravit, aby to rozpoznalo obojí ?
Díky
Nikdo prosím neřeší statistiky prokliků z vyhledávačů na Prestu ?