Я работаю над проектом дарскит в случае кризиса. Для этого проекта мы хотим подготовить конкретный случай.
Мы должны проинформировать пользователя, посещающего наш веб-сайт, о кризисе (например, на нашем заводе произошел сбой электроснабжения) Мы хотим показать ему эту конкретную страницу информации только в первый раз, когда он заходит на наш сайт. Для следующих посещений он должен посетить нашу классическую домашнюю страницу.
Как мы можем нацелить и идентифицировать пользователя, чтобы перенаправить его только один раз к сообщению с предупреждением (когда он впервые входит в систему)? Существуют ли какие-либо решения, например, для ретаргетинга Google или Facebook с помощью файлов cookie? Если да, то что это за печенье?
Наш сайт работает на Drupal 7. Может ли Drupal справиться с этим делом?
Спасибо за ваши идеи.
Из документации Drupal:
https://api.drupal.org/api/drupal/modules!user!user.module/function/user_cookie_save/7.x
Что вы можете сделать: сначала вы проверите, был ли установлен файл cookie. Если нет, то вы установите его. В следующий раз, когда пользователь посетит ваш сайт, у него / нее будет файл cookie, поэтому логические ворота будут пройдены.
Вот пример, который вы можете использовать в своем заголовочном файле в drupal:
if (!isset($_COOKIE['some_descriptive_cookie_name'])) {
user_cookie_save('some_descriptive_cookie_name');
drupal_goto('temp/page/here', [], 307);
}
drupal_goto
задокументировано здесь: https://api.drupal.org/api/drupal/includes%21common.inc/function/drupal_goto/7.x
Удачи.
Есть два подхода:
localstorage
$_SESSION[' ']
Оба будут следовать одному и тому же механизму, когда пользователь загружает веб-страницу в первый раз, установите переменную как true
, Теперь для следующих посещений проверьте эту переменную, если она установлена в true, не загружайте первую страницу и перенаправьте ее на свою классическую страницу.
Drupal может справиться практически со всем.
Что бы я сделал, это создал бы логическое приватное поле в профиле пользователя для хранения, если пользователь уже видел эту конкретную страницу.
Следуя этому подходу, вы также можете создавать отчеты о том, сколько пользователей видели эту страницу, или знать, видел ли конкретный пользователь эту страницу. Использование полей дает вам много возможностей в Drupal.
Как вы можете сохранить это значение, когда пользователь видит страницу? Проверьте модуль правил и не забудьте активировать пользовательский интерфейс правил, чтобы вы могли настроить это действие, вызванное упомянутым условием.
Ты можешь использовать hook_user_login
,
function MODULE_user_login(&$edit, $account) {
// The user has never logged in before.
if ($account->access == 0) {
// Redirect user when first login.
$_GET['destination'] = 'redirect_url';
}
}