softpro Posted January 18, 2013 Share Posted January 18, 2013 (edited) 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 ? Edited January 21, 2013 by softpro (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now