Задать вопрос
@alexeev777

Идентификация действий пользователя на сайте Wordpress?

Здравствуйте! Подскажите, пожалуйста, есть ли возможность идентифицировать пользователя, который совершил действие на сайте? То есть у меня есть кнопка на странице, которая ведет на сторонний ресурс, можно ли понять какой конкретно зарегистрированный пользователь на нее нажал?
  • Вопрос задан
  • 127 просмотров
Подписаться 1 Простой Комментировать
Ответ пользователя Сергей Ермилов К ответам на вопрос (2)
sergeiermilov
@sergeiermilov
Веб-дизайн, фронтенд и WordPress разработка
Вы можете использовать функцию get_current_user_id() и использовать её на всех активных элементах для отслеживания:

<?php $user_id = get_current_user_id(); ?>
<a href="/my-plugin-url<?php echo $user_id; ?>">View/Download plugin</a>


Или просто использовать в ссылках:

https://www.example.com/somepage/?userid=12

Считается, что это не всегда безопасно и на 100% точно, т.к. некоторые "умные люди" любят копировать ссылки и удалять лишнее.

Может быть есть смысл задавать переменную сеанса для отслеживания доступа к вашему сайту после авторизации пользователя.

На зарубежных сайтах предлагали такое решение:

1. создать GUID-значение, уникальное для этого пользователя после входа в систему и сохранить его на сеанс
2. создать другие нужные переменные
3. связать GUID с другими переменными
4. добавить это значение к URL-адресу
5. дать посетителю URL-адрес
6. когда пользователь нажимает на URL-адрес проверяем значение GUID с переменной сеанса, чтобы убедиться, что оно совпадает с GUID в URL

Если всё ок, то ок, а если нет - если нет пишем посетителю предупреждение/сообщение об ошибке с просьбой войти в систему и повторить попытку.

GUID может быть легко скомпрометирован, поэтому сделайте его длиной в 40 символов. Генераторы GUID можно нагуглить.

Храните его в качестве переменной сессии, тогда он будет доступен пользователю до тех пор, пока он остается на вашем сайте.
Ответ написан
Комментировать