Я думаю, причина этого не в том, что элемент node
токенов веб-формы относится к узлу самой веб-формы, а не к текущей странице узла.Почему webform не использует встроенную систему токенов, я понятия не имею, кажется упущенной возможностью.
Глядя на модуль webform, я думаю, что самый простой способ сделать это - написать быстрый пользовательский модульопределение одной таблицы (два столбца, nid
и url
), а затем реализация hook_webform_submission_insert()
для сохранения текущего $_SERVER['REQUEST_URI']
для всех веб-форм.Затем вы можете использовать hook_webform_submission_load()
и hook_webform_submission_render_alter()
соответственно, чтобы повторно прикрепить данные URL к отправке и отобразить их на странице.
Все эти ловушки можно найти в файле webform_hooks.php
, включенном вмодуль, они довольно хорошо задокументированы.