Я понимаю, что этот вопрос был задан, но я либо просто не понимаю, либо предыдущие ответы не применяются (или я не понимаю, как их применить) к моим обстоятельствам.Здесь идет:
У меня есть пользовательский модуль с именем:
"my_module" в / sites / all / modules / custom / my_module
У меня есть файл модуля:
/ sites / all / modules / custom / my_module / my_module.module
У меня есть имя шаблона страницы "page-mypage", которого нет в моем модуле:
/ sites/all/themes/mytheme/pages/page-mypath-mypage.tpl.php
Я сделал для этого меню ловушек:
$items['mypath/mypage'] = array(
'title' => 'My Page!',
'page callback' => 'my_module_mypage',
'page arguments' => array(1,2),
'access callback' => true,
'type' => MENU_CALLBACK,
);
В функцииЯ создаю некоторый контент примерно так:
function my_module_mypage($x, $y) {
$output = "foo AND bar!";
return $output;
}
В шаблоне (опять же, НЕ в папке моего модуля, а в подпапке ТЕМА "pages", у меня есть:
<?php print $content ?>
Когда я перехожу к http://mysite/mypath/mypage, я получаю "foo AND bar!"
Теперь по вопросу. Я хочу новую переменную, определенную в my_module_mypage (), под названием '$ moar_content'. Я хочучтобы вывести $ moar_content в моем page-mypath-mypage.tpl.php. Мне нужно сделать это только для этого модуля и для этого шаблона. Он мне не нужен для всей темы, поэтому я не думаю, что использую шаблон mytheme '.php 'присваиваетсяе.
Я думаю, что мне нужно использовать какую-то предварительную обработку, но все, что я пытаюсь, терпит неудачу, и во всем, что я читаю, кажется, отсутствует какой-то магический ингредиент.
Я думал так:
function my_module_preprocess_page_mypath_mypage(&$variables) {
$variables['moar_content'] = 'OATMEAL';
}
или
function my_module_preprocess_my_module_mypage(&$variables) {
$variables['moar_content'] = 'OATMEAL';
}
или что-то в этом роде.Я почти уверен, что на правильном пути, но я бью кирпичную стену.