2012-05-02 1 views
-1

Мне нужно создать шаблон для созданного мной вида (который я знаю, как это сделать), но я не хочу, чтобы страница была обернута в код drupal html.php. Я хочу, чтобы результирующая страница была только тем, что находится в файле шаблона, который я создаю.View Template Override, которая является полной страницей

Как это сделать?

Я нашел это, который делает то, что мне нужно для типов контента lab

function yourthemename_preprocess_html(&$vars) { 
    if ($node = menu_get_object()) { 
    if($node->type == "lab") { 
     $vars['theme_hook_suggestions'][] = 'html__lab'; 
    } 
    } 
} 

Затем создается файл с именем: HTML - lab.tpl.php

Можно использовать этот метод для моего зрения ? это должно быть if($node->type == "lab")? можно использовать что-то вроде if($view == "viewname")

Благодаря C

ответ

2

Я думаю, когда вы говорите «создали вид» вы имеете в виду вида + отображение страницы. Итак, когда вы перейдете на http://mystite.com/mypage, он отобразит содержимое просмотра.

В этом случае вы можете использовать свой код с небольшими изменениями.

function yourthemename_preprocess_html(&$vars) { 
    if (arg(0) == 'mypage') {   
    $vars['theme_hook_suggestions'][] = 'html__mypage';   
    } 
} 

Вам нужно будет создать файл .tpl.php справа и очистить кеш.

+0

Спасибо @lonut_A. Я добавил выше и создал файл шаблона, но он не сработал. 'if (arg (0) == 'qrule')' becuase url: 'domain.com/qrule' и' $ vars ['theme_hook_suggestions'] [] = 'html - qrule.tpl.php'; 'и файл шаблона (в корне моей папки темы), называемый 'html - qrule.tpl.php' Любые идеи? – Cybercampbell

+0

ok .. Думаю, вы имели в виду это: '$ vars ['theme_hook_suggestions'] [] = 'html__qrule'; ' – Cybercampbell

+0

Я понял, что мне также нужно добавить пользовательскую альтернативу' page.tpl.php' для этого представления. Как добавить это? Я попробовал '$ vars ['theme_hook_suggestions'] [] = 'page__qrule';' на следующей строке, но это дало ошибку. – Cybercampbell

Смежные вопросы