Мой WP плагин: смотреть откуда приходят посетители блога

Иногда (причем в самый неподходящий момент) у меня начинается что то типа запоя. Только не с компанией гуляк и бутылкой водки, а с мануалами по PHP, MySQL, кодексу WordPress и желанием чего нибудь изваять самостоятельно. В этот раз идея для плагина следующая: плагин должен показывать откуда пришли последние 5 посетителей блога. И как задача максимум – если посетитель пришел по какому то запросу в поисковой системе, то нужно аккуратно указать, что за система (yandex или google) и вычленить поисковый запрос. В отличии от прошлого раза, когда мой плагин должен был просто создавать jpg картинку на сервере при написании поста, теперь плагин должен при установке создать свою таблицу в базе данных WordPress, а при деактивации, соответственно, ее удалить. В таблице будут хранится http_refferer-ы последних 5ти посетителей. То есть мы должны работать с данными таблицы как со стеком: новая запись стирает самую старую. Поэтому одна колонка в таблице – TimeStamp, по которому и идет сортировка. Удивительно, но сначала я усиленно искал информацию по поводу организации стека в MySQL, то есть ситуации, когда осуществляется целая транзакция по перемещению строк (первая удалилась, вторая стала первой, …, последняя стала предпоследней, и на последнее место пишем новые данные), ну что ж… с кем не бывает 🙂

Мы также не должны изменять таблицу при внутренних переходах, поэтому в коде плагина организована проверка http_refferer с собственным именем домена, на котором установлен WordPress. Возникла проблема с тем, что символы % в строке, которую нужно было писать в БД, вызывали ошибку MySQL. С чем это явление связано я так и не понял. В phpmyadmin запрос отрабатывается нормально, а тот же самый запрос, отправляемый в БД средствами PHP вызывает ошибку. Пришлось поступить тупо: менять символы % на ! и в этом виде писать в БД, при чтении, соответственно, перекодировать обратно. Пока имеются проблемы с отработкой поисковых запросов яндекса. Причины этого выясняются. Раз уж плагин смотрит откуда пришел посетитель, то легко увидеть куда он приходит, на какие страницы. Эта информация также сохраняется в таблице.

Результат работы плагина Вы можете видеть в колонке справа. Плагин еще очень сырой, я не занимаюсь программированием профессионально, поэтому если Вы будете ставить его к себе на блог, то я заверяю, что за адекватную работу плагина, автор его (я) ответственности не несет. Для тех же, кто рискнул поставить это чудо программерской мысли к себе на блог: Инструкция

Скачайте плагин. Скопируйте файл seereferer.php в папку plugins вашего WP блога. Активируйте плагин. В шаблоне Вашей темы, там, где Вы хотите вывести список последних 5 посетителей, нужно вставить такую строчку:

<?php seeref_output(“Кто ко мне заходит:”); ?>

Ну и следите за обновлениями 🙂

Поделиться:      twitter       facebook