SlideShare a Scribd company logo
Mastering Views
Andrey Yurtaev
Session plan
Interface overview:
● Most of UI elements
Examples:
● Agregation
● Contextual filters
● Theming
● Admin pages
● Overriding pages output
Sorry, no cats :(
Lets go
Views data types
● Comments
● Content
● Content revisions
● Files
● Taxonomy terms
● Users
● D7: Theme engine
● D8: Custom block
● D8: Custom block revisions
● D8: Log entries
Views UI
Views Displays
● Attachment
● Block
● Feed
● Page
● D8: Embed
● D8: Entity reference
Format and Show
Format:
● Grid
● HTML List
● Table
● Unformatted list
● D7: Jump menu
Show:
● Content
● Fields
● D8: Search results
Important thing: Grouping field
Fields
Depends on data type
Filters
Important things:
● Exposed filters
● Exposed form settings
Useful module: Better Exposed Filters
Sort
Display settings
Page:
● Path
● Menu
Header, Footer and No results
Important things:
● Unfiltered text
● View area
● D8: Rendered entity
● D7 module: Views block area
View with no results:
Filter: Nid = 0
Pager
Good alternatives:
● Views Infinite Scroll
● Views Load More
Contextual filters
Relationships
Other
Important things:
● AJAX
● Query settings:
○ Disable SQL rewriting
○ Distinct
Views and Displays
Important things:
● Clone views
● Export/Import views
● Clone displays
● Overriding displays
Translate views: Internationalization Views
Examples
Generated content
Taxonomy: Genres
Content type: Author
● Name (Title): Text
● Bio (Body): Long text
Content type: Book
● Title: Text
● Description (Body): Long text
● Author (D7 module: Entity reference)
● Genre: Term reference
Aggregation
View name: Books by genres
Data type: Content, Book
Display: Page
Display format: HTML list, fields
Use aggregation: Yes
Field: Genre, Group results together
Field: Genre, Count
Contextual filters
View name: Author info
Data type: Content, Book
Display: Block
Display format: unformatted list, fields
Field: Author, Rendered entity
Contextual filter: Node ID, Provide default value -
Content ID from URL
Place block Author info: Only for content type - Book
Replacement tokens in Header
Clone Taxonomy term
Display format: unformatted list, fields
Fields: Title, Body
Relationship: Genre
Field: Term description, Exclude from display
Header: Unfiltered text,
Use replacement tokens from the first row
Theming
View name: Books grid view
Data type: Content, Book
Display: Page
Display format:
unformatted list,
row class -
col-xs-12 col-sm-6 col-
md-4
Uncheck Add row classes
Add to theme: views-view--books-
grid-view
.tpl.php
- <div class="view-content">
+ <div class="view-content row">
<?php print $rows; ?>
</div>
Admin pages
View name: Books admin
Data type: Content, Book
Display: Page
Path: admin/content/books
Display format: table
Menu: Menu tab, Management
Field: Title, etc.
Field: Draggableviews: Content
Field: Draggableviews: Weight
Sort criteria: Draggableviews: Weight
Extra module:
DraggableViews
Useful modules:
● Views Bulk Operations
● Commerce Backoffice
Overriding default page output by View
For texonomy term pages:
Path: taxonomy/term/%
Contextual filter: tid, Provide default value -
Taxonomy term ID from URL
Or module Taxonomy display
For user pages:
Path: user/%
Contextual filter: uid, Provide default value - User ID from URL
Overriding node output by View
View name: Book
Display: Page
Path: does not meter,
something like book/%
Contextual filter: nid,
Provide default value -
Content ID from URL,
Override title - %1
Add to theme:
node--book.tpl.php
- print render($content);
+ print views_embed_view('book',
'page', $node->nid);
Overriding node output by View page 2
Field: Body, Exclude from display
Field: Author, Exclude from display
Field: Custom text
<div class="row">
<div class="col-xs-12 col-sm-8">[body]</div>
<div class="col-xs-12 col-sm-4">[field_author]</div>
</div>
Summary
Views is great tool for:
● Node layout (instead Display Suite)
● Page layout (instead Panels)
● Awesome search (with Search API)
● Products catalog (with Drupal Commerce)
● DrupalCamp site :)
Thank You!
Questions?
Gold sponsorWith support Silver sponsors

More Related Content

Viewers also liked

Ivan Kotlyar. PostgreSQL in web applications
Ivan Kotlyar. PostgreSQL in web applicationsIvan Kotlyar. PostgreSQL in web applications
Ivan Kotlyar. PostgreSQL in web applications
DrupalSib
 
Sergey Cherebedov. Deployment of the environment for Drupal using Ansible.
Sergey Cherebedov. Deployment of the environment for Drupal using Ansible.Sergey Cherebedov. Deployment of the environment for Drupal using Ansible.
Sergey Cherebedov. Deployment of the environment for Drupal using Ansible.
DrupalSib
 
Changing role of IMF in global Scenario
Changing role of IMF in global ScenarioChanging role of IMF in global Scenario
Changing role of IMF in global Scenario
Ritika Jaswal
 
Researching women’s work: reflections on ‘Women on the Line’
Researching women’s work: reflections on ‘Women on the Line’Researching women’s work: reflections on ‘Women on the Line’
Researching women’s work: reflections on ‘Women on the Line’
Sociology@Essex
 
Unicamp 2010 1ª fase
Unicamp 2010   1ª faseUnicamp 2010   1ª fase
Unicamp 2010 1ª fase
Fábio Luiz Seribeli
 
Practice Hunting
Practice HuntingPractice Hunting
Practice Hunting
Ben Anderson
 
Михаил Крайнюк - Form API + Drupal 8: Form and AJAX
Михаил Крайнюк - Form API + Drupal 8: Form and AJAXМихаил Крайнюк - Form API + Drupal 8: Form and AJAX
Михаил Крайнюк - Form API + Drupal 8: Form and AJAX
DrupalSib
 
Բնությունը մարդու կյանքում
Բնությունը մարդու կյանքումԲնությունը մարդու կյանքում
Բնությունը մարդու կյանքում
Hovo Meliqyan
 

Viewers also liked (12)

Heavenhu art 9
Heavenhu   art  9Heavenhu   art  9
Heavenhu art 9
 
Ivan Kotlyar. PostgreSQL in web applications
Ivan Kotlyar. PostgreSQL in web applicationsIvan Kotlyar. PostgreSQL in web applications
Ivan Kotlyar. PostgreSQL in web applications
 
Sergey Cherebedov. Deployment of the environment for Drupal using Ansible.
Sergey Cherebedov. Deployment of the environment for Drupal using Ansible.Sergey Cherebedov. Deployment of the environment for Drupal using Ansible.
Sergey Cherebedov. Deployment of the environment for Drupal using Ansible.
 
Changing role of IMF in global Scenario
Changing role of IMF in global ScenarioChanging role of IMF in global Scenario
Changing role of IMF in global Scenario
 
rei-explorer-case-study
rei-explorer-case-studyrei-explorer-case-study
rei-explorer-case-study
 
kindle-social-case-study
kindle-social-case-studykindle-social-case-study
kindle-social-case-study
 
Researching women’s work: reflections on ‘Women on the Line’
Researching women’s work: reflections on ‘Women on the Line’Researching women’s work: reflections on ‘Women on the Line’
Researching women’s work: reflections on ‘Women on the Line’
 
Unicamp 2010 1ª fase
Unicamp 2010   1ª faseUnicamp 2010   1ª fase
Unicamp 2010 1ª fase
 
Practice Hunting
Practice HuntingPractice Hunting
Practice Hunting
 
Heavenhu art 130
Heavenhu   art  130Heavenhu   art  130
Heavenhu art 130
 
Михаил Крайнюк - Form API + Drupal 8: Form and AJAX
Михаил Крайнюк - Form API + Drupal 8: Form and AJAXМихаил Крайнюк - Form API + Drupal 8: Form and AJAX
Михаил Крайнюк - Form API + Drupal 8: Form and AJAX
 
Բնությունը մարդու կյանքում
Բնությունը մարդու կյանքումԲնությունը մարդու կյանքում
Բնությունը մարդու կյանքում
 

Similar to Андрей Юртаев - Mastering Views

Tips and Tricks for Getting the Most out of Views
Tips and Tricks for Getting the Most out of ViewsTips and Tricks for Getting the Most out of Views
Tips and Tricks for Getting the Most out of ViewsAcquia
 
Drupal for Non-Developers
Drupal for Non-DevelopersDrupal for Non-Developers
Drupal for Non-Developers
Jeff Pompliano
 
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
Wong Hoi Sing Edison
 
Active Tags and Taxonomy Views Drupal Drop In November 2010
Active Tags and Taxonomy Views Drupal Drop In November 2010Active Tags and Taxonomy Views Drupal Drop In November 2010
Active Tags and Taxonomy Views Drupal Drop In November 2010
Darren Mothersele
 
Streamlined Drupal 8: Site Building Strategies for Tight Deadlines
Streamlined Drupal 8: Site Building Strategies for Tight DeadlinesStreamlined Drupal 8: Site Building Strategies for Tight Deadlines
Streamlined Drupal 8: Site Building Strategies for Tight Deadlines
Pantheon
 
The panels family
The panels familyThe panels family
The panels family
merlinofchaos
 
SharePoint 2010 for Devs
SharePoint 2010 for DevsSharePoint 2010 for Devs
SharePoint 2010 for DevsRishu Mehra
 
The Missing Modules
The Missing ModulesThe Missing Modules
The Missing Modules
Clayton "Andrew" Predmore
 
Drupal Cafe №5 Харьков. Drupal 7 Views 3.
Drupal Cafe №5 Харьков. Drupal 7 Views 3.Drupal Cafe №5 Харьков. Drupal 7 Views 3.
Drupal Cafe №5 Харьков. Drupal 7 Views 3.
Alexey Gaydabura
 
Hillel of Greater Philadelphia Web Training (8/09)
Hillel of Greater Philadelphia Web Training (8/09)Hillel of Greater Philadelphia Web Training (8/09)
Hillel of Greater Philadelphia Web Training (8/09)
Judah Ferst
 
DrupalCamp Florida 2015 - One Content Type to Rule Them All
DrupalCamp Florida 2015 - One Content Type to Rule Them AllDrupalCamp Florida 2015 - One Content Type to Rule Them All
DrupalCamp Florida 2015 - One Content Type to Rule Them All
Will Jackson
 
OpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersOpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containers
Alkacon Software GmbH & Co. KG
 
Drupal Workshop
Drupal WorkshopDrupal Workshop
Drupal Workshop
Rick McKinnon
 
Django Admin (Python meeutp)
Django Admin (Python meeutp)Django Admin (Python meeutp)
Django Admin (Python meeutp)
Ines Jelovac
 
Cascading style-sheet-
Cascading style-sheet-Cascading style-sheet-
Cascading style-sheet-
Nimrakhan89
 
Chapter 4a cascade style sheet css
Chapter 4a cascade style sheet cssChapter 4a cascade style sheet css
Chapter 4a cascade style sheet cssTesfaye Yenealem
 
Whats Up With Ontopoly?
Whats Up With Ontopoly?Whats Up With Ontopoly?
Whats Up With Ontopoly?
Geir Ove Grønmo
 
Drupal Views development
Drupal Views developmentDrupal Views development
Drupal Views development
OSInet
 

Similar to Андрей Юртаев - Mastering Views (20)

Tips and Tricks for Getting the Most out of Views
Tips and Tricks for Getting the Most out of ViewsTips and Tricks for Getting the Most out of Views
Tips and Tricks for Getting the Most out of Views
 
Drupal for Non-Developers
Drupal for Non-DevelopersDrupal for Non-Developers
Drupal for Non-Developers
 
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
 
Drupalcamp
DrupalcampDrupalcamp
Drupalcamp
 
Active Tags and Taxonomy Views Drupal Drop In November 2010
Active Tags and Taxonomy Views Drupal Drop In November 2010Active Tags and Taxonomy Views Drupal Drop In November 2010
Active Tags and Taxonomy Views Drupal Drop In November 2010
 
Streamlined Drupal 8: Site Building Strategies for Tight Deadlines
Streamlined Drupal 8: Site Building Strategies for Tight DeadlinesStreamlined Drupal 8: Site Building Strategies for Tight Deadlines
Streamlined Drupal 8: Site Building Strategies for Tight Deadlines
 
The panels family
The panels familyThe panels family
The panels family
 
SharePoint 2010 for Devs
SharePoint 2010 for DevsSharePoint 2010 for Devs
SharePoint 2010 for Devs
 
The Missing Modules
The Missing ModulesThe Missing Modules
The Missing Modules
 
Lesson 15
Lesson 15Lesson 15
Lesson 15
 
Drupal Cafe №5 Харьков. Drupal 7 Views 3.
Drupal Cafe №5 Харьков. Drupal 7 Views 3.Drupal Cafe №5 Харьков. Drupal 7 Views 3.
Drupal Cafe №5 Харьков. Drupal 7 Views 3.
 
Hillel of Greater Philadelphia Web Training (8/09)
Hillel of Greater Philadelphia Web Training (8/09)Hillel of Greater Philadelphia Web Training (8/09)
Hillel of Greater Philadelphia Web Training (8/09)
 
DrupalCamp Florida 2015 - One Content Type to Rule Them All
DrupalCamp Florida 2015 - One Content Type to Rule Them AllDrupalCamp Florida 2015 - One Content Type to Rule Them All
DrupalCamp Florida 2015 - One Content Type to Rule Them All
 
OpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersOpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containers
 
Drupal Workshop
Drupal WorkshopDrupal Workshop
Drupal Workshop
 
Django Admin (Python meeutp)
Django Admin (Python meeutp)Django Admin (Python meeutp)
Django Admin (Python meeutp)
 
Cascading style-sheet-
Cascading style-sheet-Cascading style-sheet-
Cascading style-sheet-
 
Chapter 4a cascade style sheet css
Chapter 4a cascade style sheet cssChapter 4a cascade style sheet css
Chapter 4a cascade style sheet css
 
Whats Up With Ontopoly?
Whats Up With Ontopoly?Whats Up With Ontopoly?
Whats Up With Ontopoly?
 
Drupal Views development
Drupal Views developmentDrupal Views development
Drupal Views development
 

More from DrupalSib

SSO авторизация - Татьяна Киселева, DrupalJedi
SSO авторизация - Татьяна Киселева, DrupalJediSSO авторизация - Татьяна Киселева, DrupalJedi
SSO авторизация - Татьяна Киселева, DrupalJedi
DrupalSib
 
XML в крупных размерах - Михаил Крайнюк, DrupalJedi
XML в крупных размерах - Михаил Крайнюк, DrupalJediXML в крупных размерах - Михаил Крайнюк, DrupalJedi
XML в крупных размерах - Михаил Крайнюк, DrupalJedi
DrupalSib
 
BigPipe: ускоряем загрузку страниц - Давид Пашаев, DrupalJedi
BigPipe: ускоряем загрузку страниц - Давид Пашаев, DrupalJediBigPipe: ускоряем загрузку страниц - Давид Пашаев, DrupalJedi
BigPipe: ускоряем загрузку страниц - Давид Пашаев, DrupalJedi
DrupalSib
 
Drupal в школе - Борис Шрайнер
Drupal в школе - Борис ШрайнерDrupal в школе - Борис Шрайнер
Drupal в школе - Борис Шрайнер
DrupalSib
 
Евгений Юдкин - Коммуникационные инструменты в отделе продаж на примере интег...
Евгений Юдкин - Коммуникационные инструменты в отделе продаж на примере интег...Евгений Юдкин - Коммуникационные инструменты в отделе продаж на примере интег...
Евгений Юдкин - Коммуникационные инструменты в отделе продаж на примере интег...
DrupalSib
 
D8 - Serialize, Normalize - Михаил Крайнюк, DrupalJedi
D8 - Serialize, Normalize - Михаил Крайнюк, DrupalJediD8 - Serialize, Normalize - Михаил Крайнюк, DrupalJedi
D8 - Serialize, Normalize - Михаил Крайнюк, DrupalJedi
DrupalSib
 
Drupal - создание инсталляционных профайлов - Иван Абраменко, CimpleO
Drupal - создание инсталляционных профайлов - Иван Абраменко, CimpleODrupal - создание инсталляционных профайлов - Иван Абраменко, CimpleO
Drupal - создание инсталляционных профайлов - Иван Абраменко, CimpleO
DrupalSib
 
Вадим Валуев - Искусство ИТ
Вадим Валуев - Искусство ИТВадим Валуев - Искусство ИТ
Вадим Валуев - Искусство ИТ
DrupalSib
 
Migrate drupal 6 to drupal 8. Абраменко Иван
Migrate drupal 6 to drupal 8.  Абраменко ИванMigrate drupal 6 to drupal 8.  Абраменко Иван
Migrate drupal 6 to drupal 8. Абраменко Иван
DrupalSib
 
Entity возрождение легенды. Исай Руслан
Entity возрождение легенды. Исай РусланEntity возрождение легенды. Исай Руслан
Entity возрождение легенды. Исай Руслан
DrupalSib
 
возводим динамическую таблицу, No views, no problem. Крайнюк Михаил
возводим динамическую таблицу, No views, no problem. Крайнюк Михаилвозводим динамическую таблицу, No views, no problem. Крайнюк Михаил
возводим динамическую таблицу, No views, no problem. Крайнюк Михаил
DrupalSib
 
Реализация “гибких” списков Жамбалова Намжилма
Реализация “гибких” списков Жамбалова Намжилма Реализация “гибких” списков Жамбалова Намжилма
Реализация “гибких” списков Жамбалова Намжилма
DrupalSib
 
Петр Селфин. Шок! Drupal 8 против SEO?! Без регистрации и SMS скачать бесплатно
Петр Селфин. Шок! Drupal 8 против SEO?! Без регистрации и SMS скачать бесплатноПетр Селфин. Шок! Drupal 8 против SEO?! Без регистрации и SMS скачать бесплатно
Петр Селфин. Шок! Drupal 8 против SEO?! Без регистрации и SMS скачать бесплатно
DrupalSib
 
Сергей Синица. Разработка интернет-магазинов на Drupal
Сергей Синица. Разработка интернет-магазинов на DrupalСергей Синица. Разработка интернет-магазинов на Drupal
Сергей Синица. Разработка интернет-магазинов на Drupal
DrupalSib
 
Eugene Ilyin. Why Drupal is cool?
Eugene Ilyin. Why Drupal is cool?Eugene Ilyin. Why Drupal is cool?
Eugene Ilyin. Why Drupal is cool?
DrupalSib
 
Anton Shloma. Drupal as an integration platform
Anton Shloma. Drupal as an integration platformAnton Shloma. Drupal as an integration platform
Anton Shloma. Drupal as an integration platform
DrupalSib
 
Руслан Исай - Проповедуем Drupal разработку
Руслан Исай - Проповедуем Drupal разработку Руслан Исай - Проповедуем Drupal разработку
Руслан Исай - Проповедуем Drupal разработку
DrupalSib
 
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
DrupalSib
 
Ринат Ибрагимов - Региональное SEO: продвижение сайтов, созданных на  Drupal
Ринат Ибрагимов - Региональное SEO: продвижение сайтов, созданных на  DrupalРинат Ибрагимов - Региональное SEO: продвижение сайтов, созданных на  Drupal
Ринат Ибрагимов - Региональное SEO: продвижение сайтов, созданных на  Drupal
DrupalSib
 
Константин Осипенко - Аутсорс услуг тестирования - реальность или вымысел?
Константин Осипенко - Аутсорс услуг тестирования - реальность или вымысел?Константин Осипенко - Аутсорс услуг тестирования - реальность или вымысел?
Константин Осипенко - Аутсорс услуг тестирования - реальность или вымысел?
DrupalSib
 

More from DrupalSib (20)

SSO авторизация - Татьяна Киселева, DrupalJedi
SSO авторизация - Татьяна Киселева, DrupalJediSSO авторизация - Татьяна Киселева, DrupalJedi
SSO авторизация - Татьяна Киселева, DrupalJedi
 
XML в крупных размерах - Михаил Крайнюк, DrupalJedi
XML в крупных размерах - Михаил Крайнюк, DrupalJediXML в крупных размерах - Михаил Крайнюк, DrupalJedi
XML в крупных размерах - Михаил Крайнюк, DrupalJedi
 
BigPipe: ускоряем загрузку страниц - Давид Пашаев, DrupalJedi
BigPipe: ускоряем загрузку страниц - Давид Пашаев, DrupalJediBigPipe: ускоряем загрузку страниц - Давид Пашаев, DrupalJedi
BigPipe: ускоряем загрузку страниц - Давид Пашаев, DrupalJedi
 
Drupal в школе - Борис Шрайнер
Drupal в школе - Борис ШрайнерDrupal в школе - Борис Шрайнер
Drupal в школе - Борис Шрайнер
 
Евгений Юдкин - Коммуникационные инструменты в отделе продаж на примере интег...
Евгений Юдкин - Коммуникационные инструменты в отделе продаж на примере интег...Евгений Юдкин - Коммуникационные инструменты в отделе продаж на примере интег...
Евгений Юдкин - Коммуникационные инструменты в отделе продаж на примере интег...
 
D8 - Serialize, Normalize - Михаил Крайнюк, DrupalJedi
D8 - Serialize, Normalize - Михаил Крайнюк, DrupalJediD8 - Serialize, Normalize - Михаил Крайнюк, DrupalJedi
D8 - Serialize, Normalize - Михаил Крайнюк, DrupalJedi
 
Drupal - создание инсталляционных профайлов - Иван Абраменко, CimpleO
Drupal - создание инсталляционных профайлов - Иван Абраменко, CimpleODrupal - создание инсталляционных профайлов - Иван Абраменко, CimpleO
Drupal - создание инсталляционных профайлов - Иван Абраменко, CimpleO
 
Вадим Валуев - Искусство ИТ
Вадим Валуев - Искусство ИТВадим Валуев - Искусство ИТ
Вадим Валуев - Искусство ИТ
 
Migrate drupal 6 to drupal 8. Абраменко Иван
Migrate drupal 6 to drupal 8.  Абраменко ИванMigrate drupal 6 to drupal 8.  Абраменко Иван
Migrate drupal 6 to drupal 8. Абраменко Иван
 
Entity возрождение легенды. Исай Руслан
Entity возрождение легенды. Исай РусланEntity возрождение легенды. Исай Руслан
Entity возрождение легенды. Исай Руслан
 
возводим динамическую таблицу, No views, no problem. Крайнюк Михаил
возводим динамическую таблицу, No views, no problem. Крайнюк Михаилвозводим динамическую таблицу, No views, no problem. Крайнюк Михаил
возводим динамическую таблицу, No views, no problem. Крайнюк Михаил
 
Реализация “гибких” списков Жамбалова Намжилма
Реализация “гибких” списков Жамбалова Намжилма Реализация “гибких” списков Жамбалова Намжилма
Реализация “гибких” списков Жамбалова Намжилма
 
Петр Селфин. Шок! Drupal 8 против SEO?! Без регистрации и SMS скачать бесплатно
Петр Селфин. Шок! Drupal 8 против SEO?! Без регистрации и SMS скачать бесплатноПетр Селфин. Шок! Drupal 8 против SEO?! Без регистрации и SMS скачать бесплатно
Петр Селфин. Шок! Drupal 8 против SEO?! Без регистрации и SMS скачать бесплатно
 
Сергей Синица. Разработка интернет-магазинов на Drupal
Сергей Синица. Разработка интернет-магазинов на DrupalСергей Синица. Разработка интернет-магазинов на Drupal
Сергей Синица. Разработка интернет-магазинов на Drupal
 
Eugene Ilyin. Why Drupal is cool?
Eugene Ilyin. Why Drupal is cool?Eugene Ilyin. Why Drupal is cool?
Eugene Ilyin. Why Drupal is cool?
 
Anton Shloma. Drupal as an integration platform
Anton Shloma. Drupal as an integration platformAnton Shloma. Drupal as an integration platform
Anton Shloma. Drupal as an integration platform
 
Руслан Исай - Проповедуем Drupal разработку
Руслан Исай - Проповедуем Drupal разработку Руслан Исай - Проповедуем Drupal разработку
Руслан Исай - Проповедуем Drupal разработку
 
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
Сергей Черебедов - Integration Drupal with NodeJS. What is it and why You nee...
 
Ринат Ибрагимов - Региональное SEO: продвижение сайтов, созданных на  Drupal
Ринат Ибрагимов - Региональное SEO: продвижение сайтов, созданных на  DrupalРинат Ибрагимов - Региональное SEO: продвижение сайтов, созданных на  Drupal
Ринат Ибрагимов - Региональное SEO: продвижение сайтов, созданных на  Drupal
 
Константин Осипенко - Аутсорс услуг тестирования - реальность или вымысел?
Константин Осипенко - Аутсорс услуг тестирования - реальность или вымысел?Константин Осипенко - Аутсорс услуг тестирования - реальность или вымысел?
Константин Осипенко - Аутсорс услуг тестирования - реальность или вымысел?
 

Recently uploaded

UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 

Recently uploaded (20)

UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 

Андрей Юртаев - Mastering Views

  • 2. Session plan Interface overview: ● Most of UI elements Examples: ● Agregation ● Contextual filters ● Theming ● Admin pages ● Overriding pages output Sorry, no cats :(
  • 4. Views data types ● Comments ● Content ● Content revisions ● Files ● Taxonomy terms ● Users ● D7: Theme engine ● D8: Custom block ● D8: Custom block revisions ● D8: Log entries
  • 6. Views Displays ● Attachment ● Block ● Feed ● Page ● D8: Embed ● D8: Entity reference
  • 7. Format and Show Format: ● Grid ● HTML List ● Table ● Unformatted list ● D7: Jump menu Show: ● Content ● Fields ● D8: Search results Important thing: Grouping field
  • 9. Filters Important things: ● Exposed filters ● Exposed form settings Useful module: Better Exposed Filters
  • 10. Sort
  • 12. Header, Footer and No results Important things: ● Unfiltered text ● View area ● D8: Rendered entity ● D7 module: Views block area View with no results: Filter: Nid = 0
  • 13. Pager Good alternatives: ● Views Infinite Scroll ● Views Load More
  • 16. Other Important things: ● AJAX ● Query settings: ○ Disable SQL rewriting ○ Distinct
  • 17. Views and Displays Important things: ● Clone views ● Export/Import views ● Clone displays ● Overriding displays Translate views: Internationalization Views
  • 19. Generated content Taxonomy: Genres Content type: Author ● Name (Title): Text ● Bio (Body): Long text Content type: Book ● Title: Text ● Description (Body): Long text ● Author (D7 module: Entity reference) ● Genre: Term reference
  • 20. Aggregation View name: Books by genres Data type: Content, Book Display: Page Display format: HTML list, fields Use aggregation: Yes Field: Genre, Group results together Field: Genre, Count
  • 21. Contextual filters View name: Author info Data type: Content, Book Display: Block Display format: unformatted list, fields Field: Author, Rendered entity Contextual filter: Node ID, Provide default value - Content ID from URL Place block Author info: Only for content type - Book
  • 22. Replacement tokens in Header Clone Taxonomy term Display format: unformatted list, fields Fields: Title, Body Relationship: Genre Field: Term description, Exclude from display Header: Unfiltered text, Use replacement tokens from the first row
  • 23. Theming View name: Books grid view Data type: Content, Book Display: Page Display format: unformatted list, row class - col-xs-12 col-sm-6 col- md-4 Uncheck Add row classes Add to theme: views-view--books- grid-view .tpl.php - <div class="view-content"> + <div class="view-content row"> <?php print $rows; ?> </div>
  • 24. Admin pages View name: Books admin Data type: Content, Book Display: Page Path: admin/content/books Display format: table Menu: Menu tab, Management Field: Title, etc. Field: Draggableviews: Content Field: Draggableviews: Weight Sort criteria: Draggableviews: Weight Extra module: DraggableViews Useful modules: ● Views Bulk Operations ● Commerce Backoffice
  • 25. Overriding default page output by View For texonomy term pages: Path: taxonomy/term/% Contextual filter: tid, Provide default value - Taxonomy term ID from URL Or module Taxonomy display For user pages: Path: user/% Contextual filter: uid, Provide default value - User ID from URL
  • 26. Overriding node output by View View name: Book Display: Page Path: does not meter, something like book/% Contextual filter: nid, Provide default value - Content ID from URL, Override title - %1 Add to theme: node--book.tpl.php - print render($content); + print views_embed_view('book', 'page', $node->nid);
  • 27. Overriding node output by View page 2 Field: Body, Exclude from display Field: Author, Exclude from display Field: Custom text <div class="row"> <div class="col-xs-12 col-sm-8">[body]</div> <div class="col-xs-12 col-sm-4">[field_author]</div> </div>
  • 28. Summary Views is great tool for: ● Node layout (instead Display Suite) ● Page layout (instead Panels) ● Awesome search (with Search API) ● Products catalog (with Drupal Commerce) ● DrupalCamp site :)
  • 29. Thank You! Questions? Gold sponsorWith support Silver sponsors