Drupal 6: функция дублирования тем в двух темах - PullRequest
1 голос
/ 06 декабря 2011

У меня есть обычная и мобильная тема для сайта;в template.php каждой темы в настоящее время есть пара дублирующих функций, которые делают некоторый текст в тех же полях.То есть разметка для этих полей одинакова в обеих темах.

Как я могу навязать СУХОЙ и иметь логику только в одном месте?

Я понимаю, что мог бы сделатьобычная тема наследует мобильную тему, но это не похоже на «правильное» решение, так как темы в конце дня совсем другие.Тем более, что это потребует ex-post-facto манипулирования функциями предварительной обработки и переопределения мобильных файлов CSS и JS, что, по-видимому, создаст столько работы и будущего WTH, сколько и решит.

Спасибо!

Ответы [ 2 ]

1 голос
/ 25 апреля 2012

Как насчет создания базовой темы, которая содержит функции, и реализации обеих ее подтем.

Или просто мобильная тема - подтема, а тема ПК является базовой?

Создание подтемы

1 голос
/ 06 декабря 2011

Мне бы очень хотелось увидеть правильный ответ на этот вопрос.

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

Так что я делаю этот "ответ" в качестве начала разговора.

in: (mobile) template.php

preprocess_page(&$vars){
 mymodulename_pagepreprocess($vars,'mobile');
}

(рабочий стол) template.php

preprocess_page(&$vars){
 mymodulename_pagepreprocess($vars,'desktop');
}

Кстати, у вас могут быть функции preprocess в модулях.Но было бы неплохо отправить шаблон ведьмы в качестве аргумента (однако вы можете извлечь это из глобальной темы $)

...