Вы здесь

hook_preprocess_page + colorbox

2

Можно ли отследить, что материал (нода) открыт через окно colorbox (iframe=true) поверх сайта?
Нужно добавить такое условие в код ниже в место "новое условие"

function mytheme_preprocess_page(&$variables){
    if(isset(*новое условие* && $variables['node']) && $variables['node']->type == 'event') {
      $variables['theme_hook_suggestions'][] = 'page__event';
    }
}

Предполагаю, что можно отследить такие события:
1. Страница открыта в iframe
2. Перед открытием страницы был запущен colorbox
3. Страница открыта в colorbox
4. Тег iframe, в котором выводится материал имеет css класс "cboxIframe" (это вообще космос, наверное, такое отследить в препроцессе.)

Версия Drupal: 
7.x
Категория: 
Node API
Связанные проекты: 
ColorboxColorbox Node
Вопрос задан 26.07.2015 - 15:57

Ответы

1

Уже помогли разобраться. Код еще короче стал:

function mytheme_preprocess_page(&$variables){
    if(isset($_GET['iframe'])) {
      $variables['theme_hook_suggestions'][] = 'page__event';
    }
}
Ответ дан 26.07.2015 - 16:27