Комментарии 38
НЛО прилетело и опубликовало эту надпись здесь
Да, хорошие статьи. Работаю с Joomla/Joostina, но так же сейчас буду осваивать и Drupal.
Добавил в избранное себе, спасибо.
Добавил в избранное себе, спасибо.
0
Кстати, раз уж упоминаете ZEN, объясните простому нубу — почему бы просто ZEN и не использовать в качестве основы для своей темы? В чем принципиальное отличие вашего варианта? ZEN, как ни крути, уже законченное решение — кучу всего можно сделать вообще не трогая сами шаблоны, а тупо через CSS. Ну и вообще — работаешь с одной стороны не с совсем голым листом, а с другой — не надо ничего именно переделывать — только дополнять большей частью. Ну а это уж проблем не доставляет — це ж Друпал…
0
Давно делаю темы на ZEN. Надоело каждый раз вычищать лишние стили и другие «фишки» родительской темы. Наконец то добрался и сделал идеальный (для меня, конечно же) шаблон темы отвязанной от ZEN. Мне было необходимо выделить шапку с подвалом в отдельные шаблоны и обрабатывать отдельно каждый регион. К тому же, такая структура темы как у меня, мне кажется, более удобна и наглядна. Ну и плюс — не надо таскать с собой родительскую тему.
0
Мммм… А что именно вы там вычищаете? Там, по-моему, кроме меню и табов и вычищать-то нечего.
Опять же — может быть стоило в целях расширяемости и т.п. оформить вашу тему в качестве подтемы ZEN? Чтобы и все фишки ZEN остались и все, что вы пишите — про отдельные файлы и т.п.
Опять же — может быть стоило в целях расширяемости и т.п. оформить вашу тему в качестве подтемы ZEN? Чтобы и все фишки ZEN остались и все, что вы пишите — про отдельные файлы и т.п.
0
Тогда уж присмотреться к теме basic. Она является «вычищенным вариантом» zen, регулярно обновляется, уже есть RC для drupal7, поддерживает skinr и прочие приятности…
0
Осталось в себе креативность работы развить) остальное уже понятно
0
Забыли сказать как заставить Drupal увидел изменения в info для темы.
Хотя, о вариантах темизации в Drupal можно писать бесконечно, сколько разработчиков, столько и вариантов будет :).
Хотя, о вариантах темизации в Drupal можно писать бесконечно, сколько разработчиков, столько и вариантов будет :).
0
Впервые слышу про
header.tpl.php
header.tpl.php
-1
забыли про очень важную переменную $closure.
0
Очень важная переменная $closure определяет регион под футером, если мне память не изменяет. У меня в теме её нет.
-1
То есть данные, записываемые в неё, у вас нигде не выводятся или записываются в другую переменную?
Просто для примера, могу сказать, что если не сделать вывод $closure в page.tpl.php, то не будут работать как минимум два модуля: Administration menu и FCKeditor.
Просто для примера, могу сказать, что если не сделать вывод $closure в page.tpl.php, то не будут работать как минимум два модуля: Administration menu и FCKeditor.
+1
admin_menu и ckeditor работают, не волнуйтесь =) Если хотите, добавьте $closure в page.tpl.php
-1
Спасибо, исправлю. В $closure некоторые модули добавляют скрипты.
* — $closure: Final closing markup from any modules that have altered the page.
* This variable should always be output last, after all other dynamic content.
0
В том и минус малообкатанных тем, косяки в них вылазят с некоторыми модулями…
Я одно время игрался с генезисом, так там модуль аякс-комментариев не работал, в теме АТСК не хватало стандартный переменных и т.д…
В общем нафиг-нафиг, теперь только Zen, тем более его отвязать от родительской темы легче легкого, и css использовать можно только свои, без его зоопарка :)
Я одно время игрался с генезисом, так там модуль аякс-комментариев не работал, в теме АТСК не хватало стандартный переменных и т.д…
В общем нафиг-нафиг, теперь только Zen, тем более его отвязать от родительской темы легче легкого, и css использовать можно только свои, без его зоопарка :)
0
zen можно использовать еще вот так:
MYTHEME.info
theme-settings.php
в результате имеете дополнительные настройки темы от zen
MYTHEME.info
... base theme = zen ; Set the default settings to be used in theme-settings.php settings[zen_block_editing] = 1 settings[zen_breadcrumb] = yes settings[zen_breadcrumb_separator] = ' › ' settings[zen_breadcrumb_home] = 1 settings[zen_breadcrumb_trailing] = 1 settings[zen_breadcrumb_title] = 0 settings[zen_rebuild_registry] = 1 settings[zen_wireframes] = 0 ...
theme-settings.php
<?php // $Id: theme-settings.php,v 1.7 2008/09/11 09:36:50 johnalbin Exp $ // Include the definition of zen_settings() and zen_theme_get_default_settings(). include_once './' . drupal_get_path('theme', 'zen') . '/theme-settings.php'; /** * Implementation of THEMEHOOK_settings() function. * * @param $saved_settings * An array of saved settings for this theme. * @return * A form array. */ function MYTHEME_settings($saved_settings) { // Get the default values from the .info file. $defaults = zen_theme_get_default_settings('MYTHEME'); // Merge the saved variables and their default values. $settings = array_merge($defaults, $saved_settings); /* * Create the form using Forms API: http://api.drupal.org/api/6 */ $form = array(); /* -- Delete this line if you want to use this setting $form['MYTHEME_example'] = array( '#type' => 'checkbox', '#title' => t('Use this sample setting'), '#default_value' => $settings['MYTHEME_example'], '#description' => t("This option doesn't do anything; it's just an example."), ); // */ // Add the base theme's settings. $form += zen_settings($saved_settings, $defaults); // Remove some of the base theme's settings. unset($form['themedev']['zen_layout']); // We don't need to select the base stylesheet. // Return the form return $form; }
в результате имеете дополнительные настройки темы от zen
0
А что мешает дополнительные настройки для своей темы сделать?
0
если достаточно настроек от zen, то и велосипед изобретать не надо.
если надо добавить свои, то их очень просто добавить (см. $form['MYTHEME_example']).
если надо добавить свои, то их очень просто добавить (см. $form['MYTHEME_example']).
0
Я писал шаблон для создания тем в будущем. Мне половины стандартных настроек то не надо, не говоря уж о других. Вы можете использовать приведенный мной код на свой вкус. Повторюсь, я ставил цель не использовать родительские темы, я ставил цель сделать гибкую свою автономную тему. А что использовать — ваш выбор.
0
Есть достаточно хорошая книга на тему разработки тем :):
Drupal 6 Themes (Packt)
pdf'ник гуглится достаточно быстро.
Drupal 6 Themes (Packt)
pdf'ник гуглится достаточно быстро.
+1
Отличный материал для начинающих, но ваш вариант темизации отказался работать. В частности те самые header и footer не отображают содержимое в шаблоне page.tpl.php. Возможно я делаю что то не так, хотя все достаточно очевидно. Может есть какие то особые параметры, которые необходимо задать?
0
Спасибо огромное за статью. Только есть один вопросец. Как можно вытащить картинки из той папки images, которую мы создали в sites/all/mytheme/images/?
0
есть шаблон для вывода определенного типа данных — в какую директорию его поместить что бы все темы его видели, надо для мультисайтовой инсталяции друпала
0
В header.tpl.php переменная $front_page — выдает адрес главной страницы, что бы определить главная или нет в preprocess-page.inc в переменных для шапки определил $is_front. Плюс для удобства определил $head_title,
$head, $styles, $scripts.
$head, $styles, $scripts.
0
Хороший пост. Может кто подскажет еще как вывести искомую строку. Не могу найти переменную. Количество результатов @count, а вот переменную самой стоки какую ищу не могу найти.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Создаём тему для Drupal. Часть 3