3.5.1. Views-filters en sortering.
Allereerst moeten we leren hoe we blokken en pagina’s kunnen weergeven met Views. Laten we beginnen met pagina’s. We zullen alle artikelen van onze site weergeven.
Pagina’s weergeven via Views
Laten we onze eerste view aanmaken. Ga naar het menu Beheren → Structuur → Views.
Voer nu de naam van je view in en kies wat je wilt weergeven — inhoud, reacties, gebruikers of taxonomieën (in dit geval tonen we artikelen). Selecteer een filter op inhoudstype Artikel. Bij het sorteren geven we aan dat nieuwe artikelen eerst komen:
Vink het vakje Pagina aanmaken aan als we een pagina willen maken of Blok aanmaken als we een blok willen weergeven. Laten we eerst een pagina maken met alle artikelen. Je moet het pad naar de pagina en de titel invoeren. Ook kun je kiezen hoe de weergave eruitziet en hoeveel artikelen per pagina worden getoond. Hieronder beschrijven we deze instellingen in meer detail.
Klik op Opslaan en bewerken. Laten we nu alle onderdelen van de Views-bouwer stap voor stap bekijken.
Toevoegen en verwijderen
In één View kunnen meerdere aparte weergaven (displays) aanwezig zijn. Dit is erg handig wanneer je bijvoorbeeld alle artikelen op een pagina wilt tonen, maar in een blok slechts vijf artikelen. Je kunt zo individuele instellingen herdefiniëren. Voor nu kun je je daar geen zorgen over maken — later, wanneer je dit nodig hebt, kun je dit doen. Voor nu kun je voor elke behoefte een aparte view aanmaken.
Formaat
In de sectie Formaat kun je de weergavevorm kiezen. Er zijn standaard meerdere opties:
HTML-lijst – een lijst weergegeven via de <ul>
-tag.
Onopgemaakte lijst – uitvoer via de <div>
-tag.
Grid – weergave van elementen in een tabel zonder kopteksten; handig voor afbeeldingen, waarbij je het aantal kolommen kunt instellen.
Tabel – uitvoer via een tabel met kolomkoppen; handig als je veel informatie per node wilt weergeven.
Velden of teasers?
We hebben ook de mogelijkheid om inhoud weer te geven als teasers of via velden. Uit vorige lessen weet je hoe je velden voor teasers kunt aanpassen. Nu gaan we de uitvoer instellen via velden:
We kunnen nu velden toevoegen. Laten we de velden Titel en Body van de node weergeven:
Klik op Toevoegen en selecteer het veld Content: Body.
Nu hebben we twee velden: Titel en Body. Je kunt ook experimenteren en extra velden tonen zoals publicatiedatum, auteur of categorie. Let ook op het veld Body: we kunnen het inkorten tot een bepaald aantal tekens en er drie puntjes aan toevoegen. Klik hiervoor op het veld Body en vink in het venster met veldinstellingen de optie Trim this field to a maximum length aan, en voer het aantal tekens in dat je wilt weergeven:
Vink vervolgens HTML-tags verwijderen aan, zodat er geen ongesloten tags in de tekst blijven staan.
Nu hebben we velden, maar we kunnen ook filters instellen die bepalen welke nodes worden weergegeven.
Filters
We hebben nu twee standaardfilters: één om alleen gepubliceerde nodes weer te geven, en één om alleen artikelen weer te geven. Deze filters kunnen we aanpassen.
Als je op Toevoegen klikt, kun je elk van de beschikbare filters toevoegen. Bijvoorbeeld: we willen artikelen weergeven die niet ouder zijn dan een week. Voeg het filter Content: Aangemaakt op toe. In het instellingenvenster kies je Value type en geef je -7 days op.
Als je in je filters iets ziet als Use Files .., verwijder dit filter dan en selecteer in plaats daarvan het inhoudstype:
Om een filter te verwijderen, klik op de pijl naast de knop Toevoegen en selecteer Herschikken. In het venster dat verschijnt, kun je filters verwijderen of toevoegen.
Je kunt ook filteren op auteur, tags, categorieën en nog veel meer criteria. Experimenteer gerust met de filters. Laten we nu doorgaan met sorteren.
Sorteren
Naast het filteren van inhoud kunnen we ook bepalen in welke volgorde de resultaten worden weergegeven.
Momenteel wordt gesorteerd op datum van toevoeging: hoe nieuwer de inhoud, hoe hoger die in de lijst staat (in aflopende volgorde). We kunnen echter ook een gewicht-veld toevoegen aan onze artikelen. Voeg bijvoorbeeld een veld Gewicht toe met een positief geheel getal (minimaal 1). Hoe je velden toevoegt, hebben we in de vorige les behandeld.
Voeg nu een sorteercriterium toe: Content: Gewicht. Stel de volgorde in op aflopend, zodat artikelen met een hoger gewicht bovenaan staan.
Bij filters maakt de volgorde meestal niet veel uit (tenzij je OR-voorwaarden gebruikt), maar bij sortering moet je goed opletten. Resultaten worden eerst gesorteerd op het eerste criterium, en pas daarna op de volgende. Bijvoorbeeld: als je eerst sorteert op publicatiedatum, worden resultaten gesorteerd op datum; alleen als twee artikelen dezelfde datum hebben, wordt het tweede criterium toegepast. Omdat publicatiedatums in seconden worden opgeslagen, komt dit zelden voor. Daarom moeten we de sorteervolgorde omwisselen: eerst sorteren op gewicht (zwaardere artikelen bovenaan), en daarna — bij gelijke gewichten — op publicatiedatum.
Om dit te doen, klik op de pijl naast de knop Toevoegen en kies Herschikken. Gebruik de kruisjes om de volgorde van sortering te wijzigen.
Sla de view op. Nu kun je enkele artikelen aanmaken, naar de pagina /articles
(of een ander pad dat je hebt ingesteld) gaan en het resultaat bekijken: