listing_page
Introduction
Display the content of your views in content entities. Give your clients control over url aliases, metatags, translation etc..
When to use this module
Views has a display plugin "Page" which allows to render the views in a stand alone page that has its own route.
This works well for sites that do not "move" a lot but has some limitations :
- What if you want to change or translate the route?
- What if you want to display some other content on the page?
- What if you want to alter the page metatags?
- What if you want to change the displayed title?
- etc...
For all of these use cases, you'll have to play with views_ui and you will definitely have to export and import the config in order to deploy on production.
But then what if your client wants to be able to change all of this by himself?
You'll have to give him access to views_ui, exclude configs via config_ignore or config_plit and hope nothing breaks.
This module tries to address these use cases. By moving all of these configurations to content scope.
Basic usage
Configure your content types and views :
- Create a view that lists your content type (
newsfor example). - Add a display "Listing page" to the views.
- Create and configure a content type (
listingfor example) as you normally would do. - Add a field of type "Entity listing information" (
field_listingfor example) that will hold data about the views that list things and the content type of the things that are listed. - Theme your views and your nodes you normally do.
Add contents :
- Create a "Listing page" content and choose your views (
news) - Give your node a alias url, change metatags as you wish, add paragraphs etc...
Requirements
The minimum requirements are :
- Views
- Fields
Features
Supports :
- Search API based views
- Facets
- Tokens
More information on the README file