Як швидко тематизувати подання?


85

Я визначив подання за допомогою модулів CCK та View 2. Я хотів би швидко визначити шаблон, характерний для цього подання. Чи є підручник чи інформація щодо цього? Які файли мені потрібно змінити?


Ось мої висновки: (Відредаговано)

Насправді існує два способи тематизації подання: " польовий " спосіб і " вузол ". У "редагуванні подання" ви можете вибрати " Row style: Node" або " Row style: Fields".

  • способом " Вузол " можна створити node-contentname.tpl.php, який буде викликатися для кожного вузла у поданні. Ви отримаєте доступ до значень полів cck із $ field_name [0] ['value']. (edit2) Ви можете використовувати node-view-viewname.tpl.php, який буде викликатися лише для кожного вузла, що відображається з цього подання.
  • способом " Поле " ви додаєте view-view-field - viewname - field-name-value.tpl.php для кожного поля, яке ви хочете тематизувати окремо.

Завдяки попереднім відповідям я використав такі інструменти:


1
це views-view-fields - viewname - field-name-value.tpl.php не views-view-field - viewname - field-name-value.tpl.php вам не вистачає "s" на перше поле
Алекс Борсоді

В яку папку ви додаєте це?
Талон

Якби ви здійснили пошук на сторінці документації переглядів, ви б знайшли всю цю інформацію!
Bhavin Joshi

Відповіді:


52

Насправді існує два способи тематизації подання: " польовий " шлях і " вузол ". У "редагуванні подання" ви можете вибрати " Row style: Node" або " Row style: Fields".

  • способом " Вузол " можна створити node-contentname.tpl.php, який буде викликатися для кожного вузла у поданні. Ви отримаєте доступ до значень полів cck із $ field_name [0] ['value']
  • способом " Поле " ви додаєте view-view-field - viewname - field-name-value.tpl.php для кожного поля, яке ви хочете тематизувати окремо.

Завдяки попереднім відповідям я використав такі інструменти:


Зверніть увагу, що по-перше, способом "вузол", створений вами шаблон, ймовірно, (залежно від налаштувань теми) буде використаний для вузла itslef (відображається навіть за межами вузла).
Strae

Зверніть увагу, що посилань у цій відповіді зараз 404.
Дьюейн,

22

Швидкий спосіб знайти файли шаблонів, які можна створити та змінити для подання у Views 2.0, це:

  1. Редагуйте подання
  2. Виберіть стиль (наприклад, сторінка, блок, за замовчуванням)
  3. У блоці "Основні налаштування" натисніть "Тема: Інформація", щоб побачити всі різні шаблони, які ви можете змінити.

16

Функція "Розробник тем" модуля Devel зручна для того, щоб побачити, які файли шаблонів шукає Drupal, коли йде на тему. Для прикладу див. Знімок екрана на цій сторінці.



7

Одна порада:

Швидше за все, у вас буде кілька подань, які потребують подібного форматування. Створення шаблонів для кожного з цих подань та їх копіювання створює страшний сон розгалуження коду - якщо вас попросять змінити весь зовнішній вигляд сайту (передбачаючи зміну відображення кожного з цих подань, відформатованих таким чином), ви доведеться повернутися назад і редагувати кожен з них окремо.

Замість того, щоб використовувати інтерфейс подання для вибору нових шаблонів для подань, я іноді просто вставляю деяке розгалуження коду в один файл представлення. Наприклад, для одного веб-сайту в views-view-fields.tpl.phpмене є:

if($view->name == 'articleList' || $view->name == 'frontList' 
|| $view->name == 'archiveList') {
/* field formatting code */
} else {
/* the default code running here */
}

Потім це змінює поля так, як я хочу, лише для цього сімейства Views = articleList, frontList та archiveList - а для інших подань за допомогою цього шаблону запускається код, який зазвичай можна знайти в цьому шаблоні. Якщо клієнт запитає: "Гей, не могли б ви зробити, щоб ті сторінки, де відображаються архіви та цей список на першій сторінці, були більш схожими на (...)", це просто питання мого відкриття та редагування цього одного файлу, а не трьох різні файли. Технічне обслуговування стає набагато швидшим та зручнішим.



4

Моя опція ярлика.

  1. Перейдіть до файлу theme.inc у папці YOUR_MODULE_DIR/ views / theme / .

  2. У _views_theme_functionsфункції надрукуйте змінну $ themes або поставте точку зупинки в останньому рядку функції, щоб побачити вміст змінної.

Просто перетворіть views_viewу views-view та __ to - і додайте розширення шаблону, щоб отримати бажане ім’я файлу.

Наприклад, якщо елементом масиву $ themes є views_view__test_view__block (де test_viewє ім'я вашого подання), тоді ім'я файлу шаблону буде view-view - test_view - block.tpl.php .


2

На мій погляд, найпростіший спосіб вирішити, який файл шаблону використовувати для тематизації переглядів: 1) Клацніть на admin / build / views / edit / ViewName -> Basic Settings -> Theme

Натиснувши це, буде показано всі можливі файли шаблонів. Виділені файли (імена файлів напівжирним шрифтом) вказують, який файл шаблону використовується для створення теми, яка частина подання. Після включення необхідних змін у відповідний файл шаблону подання RESCAN .. тепер ви зможете побачити виділений файл шаблону.


1

Якщо ви хочете зробити швидку розробку Drupal з великою кількістю перетягування, модуль Display Suite деф. - це те, що вам слід використовувати: http://drupal.org/project/ds


0

На мою думку, це можна зробити двома способами:

Програматичний шлях:

  1. Перейти до подання редагування.
  2. Виберіть стиль сторінки / блоку.
  3. Перейдіть до розділу «Основні налаштування» та натисніть «Тема: Інформація», щоб побачити всі різні шаблони, які ви можете змінити.
  4. Додайте тему html, яку ви хочете, і надрукуйте змінні подання, де це потрібно

Оновлення конфігурації: Використання набору DisplayНабір Display надає нам можливість розміщувати ваші мітки в рядку або вище та додавати навіть, щоб приховувати їх. Також можна додати власні класи до кожного з елементів подання. Додаткові параметри включають:

  • Експортні матеріали
  • Додайте власні власні поля у бекенд або у свій код
  • Додайте власні макети у свою тему (лише D7)
  • Змінюйте мітки, додайте стилі або перевизначте налаштування полів (семантичні поля).
  • Повна інтеграція з поданнями та панелями
  • Розширте потужність своїх макетів, встановивши Field Group
  • Оптимальна продуктивність за допомогою інтеграції кеш-пам'яті об’єкта (D6) або кеш-пам'яті сутності (D7)
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.