Первым серъезным камнем преткновения разработчика, познавшего начальные прелести Друпала, является темизация модуля Views. Этот процесс содержит минимум документации, так что, порой, некоторые начинающие разработчики вообще не догадываются, что с вьюсами можно что-то делать. Однако, можно, и даже очень многое.
Итак, рассмотренные в статье разделы:
- Темизация любых типов вьюсов
- Темизация «списочной» вьюсы
- Темизация «табличной» вьюсы
- Темизация «тизерной» вьюсы
- Темизация вьюсы c полными нодами
- Темизация summary-представления
- Темизация полей
- Темизация расширенных фильтров
Собственно, статья (осторожно, много кода):
Темизация модуля Views
ЗЫ. Как обычно, ссылка для хабравчан и мега-акция — плюсую всех, кто засветился в комментах
Комментарии
сенкс...
новички врятли поймут даже это а кто шарит так давно уже на друпал.орг нашел![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
а дизайн новый зачетный
А есть такие (типа меня), которые уже почти не новички, но не нашел
Либо что-то не дошло, что тоже бывает.
От себя и таких воятелей автору спасибо.
Большое спасибо![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
Статья не была расчитана на новичков. Ведь, если так, то нужно готовить доки еще по тому, "что такое темизация вообще", "что такое шаблоны" и т.п. Может в будущем я и сподвигнусь написать все, тогда и эта статья преобразится. Сейчас, она расчитана скорее для того, чтобы попасть "бывалым" разработчикам в закладки, а то порой лень искать названия функций, чтобы использовать в проекте.
Cпасибо, полезно.
Александр, посмотрите http://drupaldance.com/ в MSIE 6.0
А-га там там некорректно 2 колонки сделаны, вот осла и колбасит. Есть же устойчивые 2-х колоночные разметки, зачем изобретать?
з.ы. вот такие мы ворчуны, нет бы сказать спасибо - дак только критикуют![Wink](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/wink.gif)
полезно! Спасибо!
На ИЕ6 новая версия сайта не расчитана, там очень много фишек, которые в ИЕ6 проще отрубить, чем сделать нормальную поддержку, и я просто не успел еще навесить огромный попап "Юзер, проапдейтись!"![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
Почти никому из вас, друзья, этот момент скорее всего не помешает, потому что судя по статистике, ИЕ6 на этом сайте всегда занимал позорные 3%
Темизация то дело понятное. Чем больше кода тем лучше =). Вот по views (конкретно для меня конечно) не достаточно понятна документация на drupal.org об интерации своих модулей в них. Я простенькое писал что-то, да и то не очень то разобрался. Вот если бы это описали было бы круто! А так все равно неоценимый вклад для сообщества.
Извинте, замечу. По liveinternet.ru во всяком случае на моих 5 сайтах IE6 занимает либо первую, либо вторую позицию в рейтинге.
Сейчас на одном из сайтов: Explorer 6 111, Explorer 7 77
НовичОК, я в курсе
Говорю про данный, конкретный сайт.
Друпалданс это новый стиль, как видно по логотипу вобравший в себя элементы брейкданса:)
Спасибо. Очень полезно.
Добавил к подзаголовкам статей ссылки с якорями (#), чтобы можно было
тыкать нубовотвечать людям ссылками, если спрашивают на форуме (а спрашивают довольно часто).IE Destroyer![Wink](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/wink.gif)
Статья зачотная![Wink](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/wink.gif)
Спасибо. В закладки. Как раз подошёл к этому вопросу.
Не могли бы разъяснить темизацию «табличной» вьюсы, и если можно рассказать как управлять строками и ячейками таблицы, а также применять свойства к таблице(типа border и прочего), спасибо.
Спасибо, полезная работа!
2 Stein![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
Учите мат.часть (theme_table — специально для вас перевел полностью
Бессмыслица же. Любую функциональность, кроме домашней страницы Васи придется писать с нуля( минимум! собственный модуль). Большинство разработчиков вынужденно игнорируют View вообще,как я понял. Это очень неудобно, запутанно, наполненно собственными ошибками и ошибками самой системы всех стадий разработки. Жрет память, меняет интерфейс из версии в версию, так что пользователи не узнают прежних.
Не понимаю.
"Это очень неудобно, запутанно, наполненно собственными ошибками и ошибками самой системы всех стадий разработки."![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
оно точно так же и в коммерческих цмс, просто вы об этом не знаете, в виду закрытости кода
Немного не по теме, но вот вопрос, заданный мною и не нашедший ответа:
Делаю модуль, в котором программно создаю вид вот так:
$future_matches_view = views_create_view('our_player_future_matches', 'All future matches for the player');
views_view_add_page($future_matches_view, t('Future matches'), NULL, 'table', true, 10, '', 1, false);
views_view_add_filter($future_matches_view, 'node', 'nid', 'views_handler_operator_or', $future_matches, 'id');
views_view_add_field($future_matches_view, 'node', 'title', '', FALSE, 0, 'views_handler_field_nodelink');
views_load_cache();
views_sanitize_view($future_matches_view);
$output .= views_build_view('embed', $future_matches_view, array(), false, false);
И все прекрасно работает, но необходимо добавить еще полей в этот вид, а именно поля:
а) типа date - время проведения матча
б) node referance - участник матча 1
в) node referance - участник матча 2
то есть надо дописать еще строки вида
views_view_add_field($future_matches_view, 'TABLE', 'FIELD', '', FALSE, 0, 'HANDLER');
Так вот не могу пока понять что подставить для требуемых полей вместо: TABLE,FIELD,HANDLER
Понятно, что это соответственно таблица в базе, поле в этой таблице и обработчик, но конкретно пока не понял для ССК полей что написать, нужна помощь.
"и все прекрасно работает" оказалось неверным утверждением, так как фильтр, добавленный мной
views_view_add_filter($future_matches_view, 'node', 'nid', 'views_handler_operator_or', $future_matches, 'id');
тоже не сработал, что обнаружилось впоследствии..(я пробовал использовать небольшой модуль viewsphpfilter)
Вобщем если есть кому что сказать -отпишитесь сюда или в топик http://www.drupal.ru/node/16941
спасибо, полезно
что-то drupaldance.com не работает, может выложите статью на druoal.ru, если у кого сохранилась?
Спасибо.
View2 который в Drupal6 координально отличается от первого который в Drupal5 и для него в темизациях просто не предусмотрена полная темизация для шаблона вида где можно расставить поля как в первом views - во втором они просто не передаются в шаблон и все тут, передается только $rows в которой все поля уже темизированы в соответствии с настройками вида.
или я что то не так понял?
однако все равно вышеприведенные примеры
http://drupaldance.com/blog/theming-views1
с Views2 не работают
что делать даже и не знаю - пока пишу в шаблоне полнейшее ламерство
$node = node_load($result->nid);
print $node->title .'<br>';
print $node->field_partlogo[0][data][description] .'<br>';
print $node->field_partlogo[0][filepath] .'<br><br>';
}
смелое решение!
предлагаю всем следовать данному хорошему примеру и искоренить это зло на корню!!))
IE6, в среднем занимает ~30-40%(зависит от тематики) и я бы не стал так пренебрежительно относиться к этим посетителям.
конечно, без фанатизма
мы должны собраться с силами и решительно сказать - "нет интернет эксплореру 6"