Может пригодиться этот код. Я для себя искал похожее, но только под MODX.
// определяем referer
$referer = $_SERVER['HTTP_REFERER'];
// ищем в referer адреса поисковиков и присваиваем
// переменным
// $search и $crawler соответствующие значения
if (stristr($referer, 'yandex.ru') || stristr($referer, 'yandex.ua')) {
$search = 'text=';
$crawler = 'Yandex';
}
if (stristr($referer, 'rambler.ru')) {
$search = 'words=';
$crawler = 'Rambler';
}
if (stristr($referer, 'google.com') || stristr($referer, 'google.com.ua')) {
$search = 'q=';
$crawler = 'Google';
}
// если посетитель пришел с поисковика то выполняем // следующий код
if (isset($crawler)) {
// здесь мы приводим referer в понятный для человека // вид
$phrase = urldecode($referer);
// ищем ключевое слово в referer
eregi($search.'([^&]*)', $phrase.'&', $phrase2);
$phrase2 = $phrase2[1];
setcookie("searchrobot",$crawler);
setcookie("searchtext",$phrase2);
}
// Выведем для проверки
echo 'robot='.@$_COOKIE['searchrobot'].'<br>';
echo 'search_text='.@$_COOKIE['searchtext'];