Маркер отправки веб-формы для многозначного поля загрузки
Я пытаюсь настроить веб-форму, которая отправляет ссылки, доступные для загрузки файла. Он уже работает с первым файлом, но я не могу понять, как создать маркер для других файлов, на которые ссылаются в многозначном поле:
Что работает (для одного файла):
Here is your requested download: <a href="[webform_submission:node:field_gated_download:entity:field_media_file:entity:url]" target="blank">[webform_submission:node:field_gated_download:entity] </a>
Я пробовал:
[webform_submission:node:field_gated_download:entity:field_media_file:entity:url:0]
[webform_submission:node:field_gated_download:entity:field_media_file:entity:url:und:0]
[webform_submission:node:field_gated_download:0:entity:field_media_file:entity:url]
[webform_submission:node:field_gated_download:und:0:entity:field_media_file:entity:url]
Почти в каждой комбинации. Это не работает.
Может ли кто-нибудь направить меня в правильном направлении?
1 answers
Один из подходов к этой проблеме заключается в том, чтобы самостоятельно интерпретировать токены с помощью hook_tokens().
hook_tokens()
вызывается каждый раз, когда интерпретируется токен, и дает вам возможность определить, как интерпретируется этот токен. Даже если токен [webform_submission:node:field_gated_download:entity:field_media_file:entity:url]
уже определен, может потребоваться также реализовать hook_token_info() или hook_token_info_alter(), чтобы определить дополнительные модификаторы для токена.
Вполне возможно, что вы могли бы обнаружить точный синтаксис маркера, который вам нужен, проверяя аргументы, переданные в hook_token_info_alter()
.
Вот два руководства, которые охватывают использование как hook_token_info()
, так и hook_tokens()
для выполнения пользовательской обработки токенов.