Как проставить ссылку в шаблоне из полной версии ноды на созданный новый режим отображения
Нужно в ПОЛНОЙ ВЕРСИИ НОДЫ создать ссылку на ДРУГОЕ ОТОБРАЖЕНИЕ (с этой же нодой).
1) Помогите с кодом в twig?
2) Как будет выглядеть адрес в таком случае?
Вьювс не предлагать с ним все получилось, но хочу обойтись без него.
И для полного понимания что мне нужно. Есть НОДА на которой будет КНОПКА просмотреть, по нажатию на которой должно открываться новое окно с ДРУГИМ ОТОБРАЖЕНИЕМ этой же ноды.
Комментарии
0) Создать контроллер, который будет показывать сущность в нужном режиме.
1 и 2 пункты после нулевого можно считать решёнными.
Нашел вот тут, то что мне подойдет, но это для 7 друпала.
В программирование не волоку, помогите кто знает как его переделать под TWIG.
Исходник:
<?php
$query = $GLOBALS['base_url'] . request_uri();
if (isset($_GET['full_view'])) {
$query = preg_replace('/\?full_view/', '', $query);
require 'node--gallery--full-view.tpl.php';
}
elseif ($teaser) {
require 'node--gallery--teaser.tpl.php';
}
else {
$query .= '?full_view';
require 'node--gallery--standart-view.tpl.php';
}
?>
То что смог сделать сам, (скорее всего ошибочно)
Добавил это в тему
function aegan_preprocess_node(&$variables) {
$variables['someVarName'] = $GLOBALS['base_url'];
}
<?php
{% set query = {{ someVarName }}~{{ app.request.uri }}%}
{% if {{ get.node.full }} is defined %}
{% set query = app.request.uri (не знаю как это сделать)
(не знаю как заменить require) 'node--igra--full.html.twig';}
{% elseif {{ get.node.teaser }} is defined %}
(не знаю как заменить require) 'node--gallery--teaser.html.twig'}?>
Решил с помощью модуля View Mode Page.
Создаем в нем режим просмотра, а затем с помощью ссылки на странице ноды выводим.
{{ 'ТЕКСТ ССЫЛКИ'|t }}
Создание ссылки (а то что то вверху не так пошло)
<a href="{{ url }}/АДРЕСС УКАЗАННЫЙ В МОДУЛЕ View Mode Page"target="_blank">{{ 'ТЕКСТ ССЫЛКИ'|t }}</a>