Добрый день.
Drupal6, Views2. Настройки views позволяют создать не любой табличный вид. Но там есть еще ручное редактирование кода вида. Кто-то разбирался? Можно ли сделать такие таблицы (с помощью views и CCK)?
- http://www.picamatic.com/show/2008/09/07/07/09/965813_774x265.png
- http://www.picamatic.com/show/2008/09/07/07/09/965815_602x147.png(2CCK поля в одном поле views таблицы)
Комментарии
темизация поможет
table
fields
Первый вариант можно сделать, второй тоже но с сортировкой по нажатию на заголовок могут быть проблемы
http://views.doc.logrus.com/group__views__templates.html
В настройках вида раздел "Basic settings" нажать на "Theme: Information" покажутся нужные (возможные) имена файлов темизации видов
Примеры этих файлов тут \modules\views\theme\, ложить нужно п папку темы. Вот у меня например есть файл в папке темы views-view-table--books-traker--page.tpl, где books-traker имя вида, page - имя представления
penexe, это я должен создать блок и засунуть туда код из раздела "Темизация «табличной» вьюсы", предварительно отредактировав его как надо?
dfaker, что-то не понятно. Из папки \modules\views\theme\ взял файл views-view-table.tpl.php и положил в папку темы. Дальше то с ним что делать? И как получить представление, похожее на то, что на рисунках?
Прежде всего переименовать его как следует (выше написано где брать нужные имена), потом для начала чтоб разобраться сделать print_r всех переменных описанных в этом файле ну а дальше ваять
dfaker, я вас не понимаю, причем в корне. Что в итоге должно получиться?
Из папки \modules\views\theme\ взял файл views-view-table.tpl.php и положил в папку темы. Переименовал его в views-view-fields--tableview--page.tpl.php (views-view-fields--tableview.tpl.php взял из "Theme: Information", tableview - название вида, page - применять к странице). Как мне посмотреть что сейчас получилось, прежде чем что-то изменять? Что вообще должно получиться? Как включить созданный файл?
Если взял views-view-table то и его имя в каталоге темы должно начинаться с views-view-table--
Получится должно свое представление вида, используя доступные переменные:
* - $title : The title of this group of rows. May be empty.
* - $header: An array of header labels keyed by field id.
* - $fields: An array of CSS IDs to use for each field id.
* - $class: A class or classes to apply to the table, based on settings.
* - $rows: An array of row items. Each row is an array of content
* keyed by field ID.
После нажатия "Theme: Information" снизу будет кнопка "rescan..", ее желательно нажать после добавления файла темизации табличного (или любого другого) вида в папку темы
Из папки \modules\views\theme\ взял файл views-view-table.tpl.php и положил в папку темы. Переименовал его в views-view-table--testview--page.tpl.php.
На странице admin/build/views он не появился. Когда я создаю новый вид и жму там на "Theme: Information" его тоже нет. И после "rescan.." нет.
...жму там на "Theme: Information"...
и вижу список по разделам (в моем случае на странице admin/build/views/edit/books_traker), в разделе "Style output:" жирным (активный) выделен мой views-view-table--books-traker--page.tpl.php (а дефолтный views-view-table.tpl.php сдедовательно не жирным) файл лежащий в каталоге темы, по чему так не знаю, наверно потому-что так правильно
Далее переименовываю свой файл в views-view-table--books-traker--page.tpl_.php жму кнопку "Rescan template files" и потом "Ок" и жирным уже views-view-table.tpl.php и даже кэшь скидывать не надо
Чем помочь не знаю
на всякий случай: dru 6.4, views 6.x-2.0-rc1
Гм... Нет его там, нет. а по шагам правильно делаю?
1. Копирую из папки \modules\views\theme файл views-view-summary.tpl.php в папку themes\garland.
2. Нажимаю на кнопку редактирования любого дефолтного вида, далее на "Theme: Information" - Вида нет.
3. Переименовываю в папке темы Галрланд этот файл в views-view-table--bookstraker.tpl.php - нет реации.
4. Переименовываю в views-view-table--books-traker--page.tpl.php - тоже ничего.
Вариант 2.
1. Создаю новый табличный вид books_traker
2. В редактировании вида жму на "Theme: Information", вижу в разделе "Style output:" views-view-table.tpl.php выделен жирным, а views-view-table--books-traker.tpl.php нежирным.
3. Копирую из папки \modules\views\theme файл views-view-summary.tpl.php в папку themes\garland и переименовываю в views-view-table--books-traker--page.tpl_.php. Ничего не изменилось.
Может попробовать снять противогаз?
По второму варианту копировать в тему для views-view-table--books-traker--page.tpl.php нужно views-view-table.tpl.php а не views-view-summary.tpl.php.
views-view-table--books-traker--page.tpl_.php я привел просто для примера, чтобы показать, что как только изменил возможное имя, то назад возвращается дефолтный шаблон для таблицы views-view-table.tpl.php
Кстати если используется вывод вьюса в виде страницы (page) его нужно создать (слева их список там где выпадающее меню)
Наверно друпал не легко дается если спотыкаться на таких мелочах
Возможно стоит не спеша перечитать топик заново
Щас заметил особенность, если имя вьюса было к примеру books_archive, то файл темизации табличного представления на странице должен быть таким: views-view-table--books-archive--page.tpl, то есть название вьюса уже не с подчеркиванием, а с дефисом, может в этом была загвоздка
Что бы я ни копировал в папку themes\garland и как бы это ни называл, views ничего не видит :(.
dfaker, а вы не попробуете нажать на странице admin/build/views на экспорт своего вида. Там не тот же код что у вас в файле? Если да, то, возможно, мне не придется создавать новый файл, а просто импортировать код вида через панель управления?
З.Ы.: Для чего вообще нужна темизация и что это?
Нет не тот код там
Темизация нужна чтоб выводить данные обрамленные определенной html разметкой.
Если все таки хочется посмотреть как работает темизация, то можно взять файл \modules\views\theme\views-view-table.tpl.php и привести его к виду (только на тестовом сайте):
<?php
// $Id: views-view-table.tpl.php,v 1.6 2008/06/25 22:05:11 merlinofchaos Exp $
/**
* file views-view-table.tpl.php
* Template to display a view as a table.
*
* - $title : The title of this group of rows. May be empty.
* - $header: An array of header labels keyed by field id.
* - $fields: An array of CSS IDs to use for each field id.
* - $class: A class or classes to apply to the table, based on settings.
* - $rows: An array of row items. Each row is an array of content
* keyed by field ID.
* ingroup views_templates
*/
print('
');
?>
будут видны только дынные массива $rows без темизации, потом назад нужно вернуть содержание этого файла, а то все табличный виды будут так выводиться