Project derde les

Leseenheid

Moeilijkheidsgraad

3

Wij hebben in de vorige lessen kennis gemaakt met de inhoudstypes 'Basic' en 'Article'. Deze inhoudstypes worden meegeleverd als voorbeeld bij de installatie van Drupal.

Basic hebben we gebruikt om een welkomspagina te maken. Het heeft enkel een body om tekst en desnoods enkele afbeeldingen tussen de tekst weer te geven. Article leek ons geschikt om enkele gerechten te publiceren. Het inhoudstype heeft een afbeelding, een body en tags.

We herhalen in een oefening nog eens deze twee inhoudstypes. Maak inhoud aan die een soort geschiedenis van de zaak weergeeft, alsook twee artikels die gaan over onze prijzen die we in de loop der jaren hebben gekregen. Welke inhoudstypes passen het best bij deze inhoud? Motiveer je antwoord.

Nu gaan we zelf een inhoudstype aanmaken en velden instellen. We kiezen als voorbeeld in ons traiteur project om ons aanbod aan kazen voor te stellen. Bekijk dit voorbeeld. Welke velden heb je nodig?

Vooraleer je een inhoudstype maakt moet je eerst nadenken welke taxonomietermen je gebruikt. De wijze waarom we vorige les te werk zijn gegaan is niet echt professioneel. Taxonomietermen leg je best vooraf eerst vast in 'woordenlijsten'.

Maak de woordenlijsten aan zoals hier boven. Vul ze met allemaal met enkele termen:

We stellen het inhoudstype qua input als volgt voor:

Merk op dat ik telkens een andere widget (=manier van ingeven bvb een keuzelijst, keuzerondjes, tekstvak,..) neem voor de taxonomieterm.

Bij de output hebben we voor de standaard weergeve (=full versie):

en voor de teaser neem ik deze instelling:

Vooralleer we inhoud gaan toevoegen, gaan we eerst het probleem van die URL's aanpakken. Tot hiertoe moesten we per artikel telkens een alias geven aan onze URL. We installeren Pathauto (en Token) om dit probleem op te lossen. Modules installeren doe je net zoals thema's. Normaal gezien zou pathauto bij elke Drupal moeten geïnstalleerd worden. Ik heb dit echter niet gedaan om je ook eens een module te leren installeren. Ik heb ook een module geïnstalleerd die de vertalingen gaat opzoeken en telkens de vertaling ook mee installeert... Ze kunnen me niet genoeg betalen..

Bij de instelling zet je dit best zo. De URL wordt dan sitenaam/inhoudstype/titel. Meer moet dat niet zijn. Token is de module die je in staat stelt om zo algemene patronen te gebruiken.

Als je geen aliassen had gegeven kan je via massaal bijweken, alle niet ingevulde aliassen automatisch genereren:

Voeg een viertal kazen als inhoud toe. Nu gaan we een overzicht maken van een type dat we nog niet gezien hebben. We maken gebruik van Drupal views (=overzichten).

Alles van een inhoudstype kan je weergeven.

Als je een menulink wil kan je dit instellen. We houden het overzicth op de teaser versie. Later komen we nog uitvoerig terug op Views.

 

Maak nu een ander inhoudstype aan 'wijnen'. Ik laat de keuze van de velden aan jou over. Een voorbeeld:

Voeg een aantal wijnen toe aan de inhoud. Maak weer een overzicth met Views en zorg voor een menulink.

We hebben nu 2 inhoudstype aangemaakt en we hebben er inhoud aan toegevoegd. De URL's werden automatisch via een alias, Google vriendelijk gemaakt.

Kunnen we ook inhoudstypes combineren. Bijvoorbeeld... laat ons bij elke kaas een aangepaste wijn voorstellen, die dan als keuzelijst te voorschijn komt.

Vooraleer we dit kunne moeten we eerst de module 'entity references' installeren. De is afhankelijk van Entity API en Chaos tools (dit laatste werd reeds door mij geïnstalleerd)

Het geeft bij de velden een nieuwe mogelijkheid:

Je stelt in wat voor inhoudstype je wilt gebruiken. Hier willen we de wijnen tevoorschijn brengen.

Het combineren van inhoudstypes is een krachtig wapen. Hier kiezen we een wijnsoort bij onze kaas, maar het kon evengoed een personeelslid zijn met zijn coördinator of een bewoner met zijn straat. In dit laatste geval neem je beter een taxonomieterm. Waarom? Wanneer ga je taxonomietermen nemen in een keuzelijst en wanneer genereer je een lijst vanuit een inhoudstype.... De moeilijste vraag tot hier toe...