Подскажите, как сделать что бы регистрация фиксировала на какой странице была регистрация.
Поясню на примере: у меня на одном сайте несколько лэндингов и на каждом есть кнопка регистрации. Соответственно регистрация (форма) одна для всего сайта, для всех лендингов. Но мне важно знать с какой страницы (лэндинга) зарегистрировался пользователь.
Хочу записать это в метаданные пользователя.
Как мне это сделать? И возможно ли это сделать без вмешательства в сам код плагина?
Если нет, то подскажите как и что можно сделать для сохранения значения (страница) в свойства этого пользователя.
Андрей сказал(а)
При нажатии на кнопку регистрация, пользователя перекидывает на страницу регистрации.
ок. А тогда причем тут плагин WP-Recall - если вы по приходу на другую страницу не знаете referrer-а?
Вот решите вначале этот вопрос: получаете из $_SERVER, в куку сохраняете, при реге берете оттуда. как-то так
Думал про куку, но это не надежный источник хранения. Некоторые отключают куки, а некоторые пользуются режимом в браузере инкогнито. В этом случае, насколько я знаю куки не сохраняются. Поправьте меня, если не прав.
С $_SERVER у меня что-то вообще не задалось. Не могу разобраться с ним. Да и в документации пхп написано, что это не надежный источник и информации нельзя доверять, т.к. браузеры вносят свои изменения.
Андрей сказал(а)
а некоторые пользуются режимом в браузере инкогнито.
так там кука удаляется только при закрытии вкладки браузера.
т.е. открыли браузер в инкогнито, перешли на лендинг, потом на страницу с регистрацией - всё это время кука будет жить.
Ну вам видней - отслеживать 100% если не получается - то хоть что-то?
Может вам тогда рассмотреть настройку гугла или яндекса - у них счетчики есть. Там можно ставить цели и снимать статистику. Но и тут нет 100% верности данных. Но, повторюсь - если нет 100% верного решения задачи - решать её все равно нужно и хоть что-то собирать
Счетчик Яндекс стоит и цели настроены, статистика собирается. Но не получится использовать для этих целей.
Идеальный вариант 100%, передавать с формой нужное значение, но это уже нужно внедрять в плагин.
С куками пробовал вчера, но не получилось.
Вот что сделал:
На посадочную страницу в самом начале вставил запись в куки:
setcookie("page", "target1");
Потом на странице своего дополнения к плагину RCL вызываю хук:
add_action( 'user_register', 'save_info' );
И в самой функции сохраняю в мету из куки:
$page = $_COOKIE["page"];
update_user_meta( $user->ID, "meta_page", $page );
Но не получилось. Запись в мету сделана, но значение получилось NULL.
Дружаев Владимир (Otshelnik-Fm) сказал(а)
В любом случае user_register - это хук вордпресс.
Пробуйте найти решение на официальном форуме поддержки вордпресс.
Так дело не в хуке. К нему вопросов нет.
Как идентифицировать страницу на которую впервые перешёл пользователь, сохранить это значение и передать дальше.
Дальше - это когда пользователь зарегистрируется, то по хуку user_register вызывается функция и в этой функции нужно это значение (1я страницы) сохранить в мета данные пользователя.
Основная проблема у меня - определить, сохранить и передать значение.
Пробовал через куки, но в мету записалось NULL
Так же сохраняю данные при регистрации: $_SERVER['HTTP_REFERER'] и $_SERVER['REQUEST_URI']
но они у тестового пользователя вообще не информативные 🙁
$_SERVER['HTTP_REFERER'] >
$_SERVER['REQUEST_URI'] > /account/?action-rcl=register
Регистрация происходит по кнопке со ссылкой:
P.S. Идентифицировать страницу несложно. Просто на этой странице нужно записать соответствующее значение в куки, сесию,...
Но вот у меня сложность, что бы передать её без повреждения до того момента когда сработает хук user_register и запустится функция.
Preci сказал(а)
Насколько я знаю в у формы регистрации recall есть фильтры, а значит можно дополнить ее любым полем без страха потерять что-то при обновлении плагина, все будет продолжать работать
не умею пользоваться фильтрами 🙁
В RCL есть хуки и фильтры, но про форму регистрации не знаю.
Как это может выглядеть?
Андрей CS сказал(а)
в этом случае, данные сохраняют в куку
Ровно так и делал в начале. Почему-то не вышло у меня. Но опять же куки отключены у пользователя и всё, в пролёте.
Самый надежный вариант передавать данные с формой регистрации.
А можно это сделать без изменения RCL ?
Андрей сказал(а)
А можно это сделать без изменения RCL ?
мы по моему идем по кругу. Вам говорили про фильтры вордпресс.
Это обычный php в экосистеме вордпресс и проблем тут нету кроме надуманных "отключены куки". Вордпресс как такого пользователя авторизует? В любом случае такой умник с отключенным js и куками в вордпресс работать не сможет.
Последний совет по теме - обратитесь за доработкой через задания
или через фриланс. Больше в этой теме вариантов нет.
Игорь - так это обертка над $_SERVER о нем я писал сразу же в первых сообщениях.
Автор эту затею откинул.
Вариантов решения дали - бери и делай, а мы уговариваем по 3-му кругу решать не нашу задачу
Андрей сказал(а)
а вы не хотите.
- странно да? на бесплатном форуме поддержки мы должны хотеть сделать вам вашу задачу... Попросите помощи в интернетах по вордпресс - возможно там энтузиасты энтузиастней, чем мы, занятые улучшением основного продукта.
Вариант с $_SERVER не помог. Возможно я что-то не то сделал, но получить тут поддержку нереально.
- странно да?
Да, странно, когда пишите поддержка, а её нет 🙂
У вас от форума поддержки только слово форум, а дальше НЕ поддержки. Ощущение, что вы тут самоутверждаетесь. Мы такие гуру, а вы тут так ... недо ...
"Молодцы" 🙂
Вся ваша поддержка заключается в посылании.
Владимир, я сразу ответил по поводу совета о $_SERVER['HTTP_REFERER'].
1. Описание в документации ПХП: Адрес страницы (если есть), с которой браузер пользователя перешёл на эту страницу. Этот заголовок устанавливается браузером пользователя. Не все браузеры устанавливают его, а некоторые в качестве дополнительной возможности позволяют изменять содержимое заголовка HTTP_REFERER. Одним словом, нельзя доверять этому заголовку.
2. Нет нужной информации в $_SERVER['HTTP_REFERER']
add_action( 'user_register', 'save_info' ); - добавлена функция в хук.
И в этой функции сохраняется $_SERVER['HTTP_REFERER'] в бд, но значения совсем не те, что нужны.
Например вот такое значение
а должно быть
Но так как тут не получить поддержку, то мои сообщения игнорятся.
Владимир, я даже готов вам заплатить за работу. Но опять же отклика нет.
Вот такая у вас "поддержка".
Андрей сказал(а)
Но так как тут не получить поддержку, то мои сообщения игнорятся.
Столько постов вам с вариантами, которые надо развивать или проверять. Никто же не делал ничего похоже тут, что бы вам готовое решение выложить.
Тем более ваш вопрос не относится к поддержке совершенно. А относится к личной кастомизации под свой проект и хотелки.
Доработки, изменения, новый функционал - это не поддержка) Тем не менее, тут всегда помогают готовыми решениями или подсказывают направление.
Так я проверяю и советуюсь, а вы устраиваете травлю.
Ответил по поводу предложенного варианта, так меня опять в начало ткнули. Зациклили.
По поводу поддержки не мои слова.
А по поводу поддержки. Так я уже месяцев 8-10 про глюк партнерки говорю.
Так меня игнорят и нафиг послали. Заплатил за поддержку, как попросили, но баг так и не исправили и разбираться не стали.
Менея сегодня в очередной раз партнеры ткнули в этот баг 🙁 Приходится съезжать с темы и работать с тем что есть.