Вольный дизайн сайта

Главные вкладки

Аватар пользователя Mhuadeep Mhuadeep 8 марта 2010 в 16:02

Вопрос наверное не нов, и возможно довольно сильно избит, но все же, после недельного ковыряния друпала, сделал свою собственную тему, и пришел к выводу что CMS довольно серьезно диктует свои правила, с одной точки зрения это плюс, а с другой большой минус (хотя может чего-то еще просто не знаю).

У CMS есть свои шаблоны, для выводимого контента блоки, ноды и так далее, и свои стандартные наборы каркасы (2 колонки, 3 колонки, 1 колонка), что меня несколько огорчает. Все это доступно в файлах tpl.php, пофиксить можно одним словом, а что делать например если нужно темизировать отдельно админку (знаю можно поставить garland или что еще и использовать в админке их) или создать полнофункциональную тему для друпала, ковырять все через FireBug это ж мягко говоря 3.14ЗДЕЦ, может есть какой либо шаблон для таких целей, гугление послало меня на х@у& а хабр и drupal.ru на Zen theme, если же это не верно, то прошу пнуть направить меня в нужное русло.

Очень сильно не понравилось, что для каждого отдельного блока нельзя создать свой tpl.php и настроить в нем вывод данных так как тебе нужо (div'ами например), но для этого вроде бы нужно писать хак. Так же очень сильно расстроило ОГРОМНЕЙШЕЕ количество div'ов, это же просто праздник какой-то кошмар, CMS их вставляет везде и повсюду где только может, да и где не может, то же пытается воткнуть, что не есть хорошо + огромное колличество css классов, тут черт не только ногу себе сломит, он тут себе он обе ноги сломает, шею, позвоночник, руки да и все внутренние органы по отбивает на хрен, во общем создать адекватный структурированный свой css файл, где будут только твои классы очень тяжко. Огорчает и ситема вывода информации ссылки выводятся списком (это логично, я не спорю), но зачем список когда ссылка одна, где пофиксить я нашел, но все же это весьма грубо так ограничивать пользователя.

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

Вопросов несколько:
1) Куда капнуть или куда сходить, что бы узнать как - создать полнофункциональную тему от начала и до конца.
2) ----|---- ----|---- ----|---- ----|---- ----|---- - настраивать вывод информации в блоках и как темизировать блоки по отдельности
3) ----|---- ----|---- ----|----, очень интересует вопрос с формами, да есть FormsAPI, нужно править массивчег, и все будет в шоколаде, НО а что делать, если мне НЕ нужно выводить их в дивах, а нужно сунуть в табличку, и убрать все обрамляющие его дивы, т.е. оставить голый html без дивной обертки

<table>
<tr>
<td>
<label for="name">Ваше имя:</label>
<td>
<td>
<input type="text" name="user-name" />
</td>
<tr>
</table>

что-то в этом стиле?
4) Как избавиться от гигантского количества обрамляющих дивов
5) Наверное самый выжный вопрос для меня, на данный момент, я ни на грамм не представляю как вообще функционирует ядро, понятия не имею для чего чего нужна каждая таблица в CMS (некоторые конечно понятно для чего Smile но не которые я в душе не @#$ не представляю для чего) где можно приблизиться к святому?

Комментарии

Аватар пользователя volocuga volocuga 8 марта 2010 в 16:43

"Mhuadeep" wrote:
Очень сильно не понравилось, что для каждого отдельного блока нельзя создать свой tpl.php

Неправда,делается на раз-два

block-block-123.tpl.php, где 123 - ID вашего блока

"Mhuadeep" wrote:
Так же очень сильно расстроило ОГРОМНЕЙШЕЕ количество div'ов

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

"Mhuadeep" wrote:
НО а что делать, если мне НЕ нужно выводить их в дивах, а нужно сунуть в табличку,

Во многих случаях полезно просто забить, так как трудозатраты могут быть огромными, к тому же всё переопределять в коде,думаю,может повлиять на производительность.

Аватар пользователя Dеmimurych Dеmimurych 8 марта 2010 в 16:52

Друпал это ядро.
В нем можно изменить почти все.

Мы вообще не использую в работе блоки, и типичные друпал темы.

Помните что типичный page друпала это всего лишь theme('page') который можно переопределить и делать ВСЕ ЧТО УГОДНО.

Аватар пользователя Mhuadeep Mhuadeep 8 марта 2010 в 17:28

Dеmimurych wrote:
Друпал это ядро.
В нем можно изменить почти все.

Мы вообще не использую в работе блоки, и типичные друпал темы.

Помните что типичный page друпала это всего лишь theme('page') который можно переопределить и делать ВСЕ ЧТО УГОДНО.


Я буду очень признателен, если ВЫ пнете направите меня в сторону где можно прочитать про ВСЕ ЧТО УГОДНО

Аватар пользователя Shift-Web Shift-Web 8 марта 2010 в 16:53

Есть немного Smile Сам пытаюсь темку сверстать по своим стандартам, но меня очень не устраивает метод хуков и переопределения. Ведь иногда реально надо поправить какие-то пару тегов, а лезти приходится в самую ...

Дивы да ... Если Вы еще не смотрели модули, то там будет покруче наслоение классов и всевозможной жести. В некоторых так прям 3.14...ц, как всё кудряво Biggrin

В ядро лазать не принято тут. Учитесь делать всё "по кошерному", учите апи xD

Аватар пользователя direqtor direqtor 8 марта 2010 в 17:09

ТЕМИЗАЦИЯ.

И с этим словом – в поиск.

В друпале для этого два способа.

Первый - файлы шаблонов. Для изменения вывода HTML можно создавать по определённым правилам свои шаблоны для страниц, блоков, типов нод, полей cck, представлений и прочего-прочего. Переменные для каждого шаблона готовятся в препроцесс-функциях, которые вы тоже можете писать, как вам захочется.

Второй способ – функции темизации. В своей теме вы можете переписать вывод любой функции theme_чтототам.

Аватар пользователя penexe penexe 8 марта 2010 в 17:48

http://drupal.org/node/173880

"Mhuadeep" wrote:
Я буду очень признателен, если ВЫ пнете направите меня в сторону где можно прочитать про ВСЕ ЧТО УГОДНО

эти хуки позволяют изменять дру как душе угодно
hook_form_alter
hook_menu_alter
hook_schema_alter
hook_theme_registry_alter
hook_nodeapi
hook_taxonomy
hook_user
hook_theme
а почитать можно тут http://api.drupal.ru/

Аватар пользователя volocuga volocuga 8 марта 2010 в 18:01

Топикстартер: Друпал - это 2 кучи кода: 1 куча (ядро) выдаёт то, то потом нужно переопределить другой кучей (хуки)

Аватар пользователя Mhuadeep Mhuadeep 9 марта 2010 в 17:17

"volocuga" wrote:
то потом нужно переопределить другой кучей (хуки)
вот это и расстраивает, что надо лезть в самые темные закоулки жЁпы хуков