Модуль сбора информации

Приветствую, есть интерес в написании компонента. Если есть у разработчиков время и желание взяться за реализацию был бы рад узнать условия и сумму. Самому такое не потянуть, не хватает знаний и времени(
Суть компонента кратко:
Модуль собирающий данные о визитах и просмотрах пользователя на сайте, работа с этой информацией в админке, и вывод страниц исходя из накопленных данных.

Как примерно я вижу ТЗ неоходимый, возможно можно поправить на более хороший вариант.
Сбор информации:
1. Пользователь зашел на сайт
a. Проверяем, стоит ли куки у пользователя, если куки нет (пользователь новый), ставим ему куки, создаем в базе запись о пользователе. Сам новый пользователь (nUser): Id, Куки, IP, может еще немного служебной информации. И его визит (nVisit): Дата, время, страница, класс страницы, родитель страницы…
b. Если куки есть, добавляем в базу информацию о визите и просмотре: Пользователь, Дата, время, страница, класс страницы, родитель страницы…

2. Пользователь зарегистрировался на сайте или авторизовался
a. При регистрации пользователя подвязать накопленные данные о его просмотрах и куки к аккаунту modx. Чтобы можно было накапливать данные о его действиях, если он авторизован на сайте и если не авторизован. Т.е. что-то вроде привязать куки к аккаунту, или как-то так.
b. Наверно было бы неплохо при авторизации сверять куки в базе и у пользователя и если они отличаются подкачивать данные о просмотрах по этим 2м куки в аккаунт пользователя.
В итоге если я все верно предусмотрел, у нас будет собираться информация о действиях пользователя на сайте вне зависимости от того зарегистрировался ли он или нет. Также видимо было бы неплохо собирать еще и дополнительные действия вроде заказа товаров(minishop).

Работа с информацией в админке:
1. Хочется иметь возможность работать с таблицей пользователей и их действиями. Что-то вроде. Таблица пользователей 2 вкладки Зарегистрированные Неопознанные(только куки, пользователь не зарегистрировался) Для зарегистрированных подтягивать контактные данные из аккаунтов пользователей modx. И выбирая пользователя мы получаем список его действий, открытые страницы, время открытия, и тд. Если возможно разделить страницы по типам (вкладкам). Страницы, товары, тикеты, заказы.
Работа на фронте:
На сайте, пользовательской части, нужно иметь возможность выдавать наборы страниц исходя из накопленных данных.
Что-то вроде
[[!nUser?
    &isFound=`1`
    &field=`pages`
    &toPlaceholder=`pages`
]]
[[pdoResources?
    &resources=`[[+pages]]`
    &depth=`0`
    &tpl=`ListRowTpl`
]]
Или свой сниппет выводящий страницы по параметрам. Вроде условий: Если пользователь опознан, вывести товары, где parent товаров равен parent последнего открытого товара. Или вывести товары того раздела, который чаще всего смотрит опознанный пользователь

Надеюсь, написал понятно, на данной схеме реализации не настаиваю, возможно, будет придуман лучший способ, но идея в целом должна сохраниться.
Ilya Ev
19 января 2016, 09:43
modx.pro
1 207
+1

Комментарии в этом разделе отключены, так что вы должны указать свои контакты прямо в объявлении, или активировать отправку сообщений из профиля.

Обратите внимание, что modx.pro не несёт никакой ответственности за выполнение работы или оплату заказа. Это просто доска объявлений, дальше вы общаетесь за пределами нашей площадки.