Как получить id из контекстного фильтра

4 января 2022 в 15:00
Аватар пользователя batulin batulin 0 19 Решено

Здравствуйте! Скажите пожалуйста, как я могу получить id текущей ноды из контекстного фильтра во views? Мне необходимо получить id текущей ноды и ноды, выводимой через views, чтобы передать их в ссылку (пользовательский текст) для заполнения полей формы. Спасибо.

Комментарии

"получить id текущей ноды"
Вам подсказать, как сделать вьюху, которая выводит ID ноды на ее странице?

"ноды, выводимой через views"
там есть поле ID

4 января 2022 в 15:20

Здравствуйте VasyOK! Нет, под текущей нодой я подразумеваю ноду, на странице которой расположено представление. Представление - блок.

4 января 2022 в 15:24

Вы, наверное, не обратили внимание, что есть пометка, что представление сделано как блок. Он располагается на страницах нод определенного типа материала. Поэтому один id нужно извлечь из материала из views (это делать умею), а второй со странице ноды, на которой это представление выводится. С Новым годом и Рождеством!

4 января 2022 в 17:08

"представление сделано как блок" - пускай.
Даже для такого представления можно добавить контекстный фильтр ID материала и вывести во вьюху поле с ID.

4 января 2022 в 17:40

Я понимаю, что это можно, но не понимаю как. Эти 2 материала разных типов - читатель и книга, при добавлении читателю книги создается материал типа выдача, где появляются ссылки на читателя и на книгу и добавляется время выдачи и возврата. В представлении я вывожу книги на странице читателя. В представлении есть связь с выдачей и я добавил связь с читателем (хотя по ссылкам книга с читателем не связаны напрямую). В контекстном фильтре выбран читатель как ссылка на сущность в выдаче. Подскажите пожалуйста как это сделать. Спасибо.

4 января 2022 в 18:23

контекстный фильтр:
Content: ID

В его настройках
Передать значение по умолчанию
ID материала из URL

Тогда у нас есть блок-вьюха. Если мы помещаем этот блок на страницу любой ноды, поле Содержимое: ID показывает ИДшник

5 января 2022 в 0:11

Блок вывелся и книги вывелись, но id читателей не выводятся потому что у них нет читателей (книги отфильтрованы по отсутствию читателей и выдач). Но и id текущего читателя не выводится ни где.

5 января 2022 в 16:19

batulin wrote:Как получить id из контекстного фильтра

"Получить" куда?

batulin wrote: чтобы передать их в ссылку (пользовательский текст) для заполнения полей формы

Передать каким образом? PHP (hook)? Twig? JS?

5 января 2022 в 16:37

Здравствуйте! В этом представлении есть поле пользовательский текст со ссылкой на форму создания ноды выдачи. Мне нужно вывести его в ссылке доя автозаполнения через prepopulate.

5 января 2022 в 16:42

То есть twig. У Вас в форме для поля Custom text, прямо под полем, есть список REPLACEMENT PATTERNS. Там должно быть что-то типа {{ raw_arguments.field_reader_target_id }} . Это он и есть.

5 января 2022 в 16:56