Les 11

Herhalingsoefening (Deel 2)

We werken verder aan onze site rond het thema muziek. Aan de hand van concrete opdrachten herhalen we geziene leerstof. Hierna bouwen we met nieuwe kennis verder aan de site.

  1. Maak een nieuw inhoudstype aan: bandleden
  2. Voeg volgende velden toe:
    1. Afbeelding: bestaand veld, geen speciale instellingen
    2. Band: referentie naar inhoud, refereer naar het inhoudstype 'Band'

  1. Vergeet bij de formulierweergave niet om het afbeeldingsveld op Focal Point te zetten en keuzerondjes aan te zetten bij de band
  2. Uiteindelijk resultaat:

  1. Stel ook de weergave correct in. Hiervoor zal je een nieuwe afbeeldingsstijl moeten maken:

  1. Nu komt er een beetje bandwerk aan te pas. Je zal nu alle bandleden moeten toevoegen. Gebruik hiervoor de bestanden van vorige les. Let hier telkens op het volgende:
    1. Focal Point goed leggen
    2. Alt-tekst niet vergeten
    3. Aanduiden bij welke band de muzikant speelt
    4. Een Menu-link leggen
  2. Voorbeeld:

     

  1. Met PathAuto Bulk Generate zorg je ervoor dat er URL-aliassen worden aangemaakt voor de bandleden.

Superfish

We zitten met een probleem. Wanneer je nu over een menulink gaat verwacht je dat daar de onderliggende menulinken te zien zijn. Helaas, dat blijkt niet te werken. Ookal zit alles goed zoals 'uitgeklapt weergeven' en het 'maximale aantal subniveaus'. Gelukkig bestaat er een leuke module die dit gaat oplossen: Superfish.

  1. Download en installeer de module
  2. Plaats de plugin op de server (staat al op de server van de cursisten Drupal Basis, Dendermonde, sem 1 2017-2018)
  3. Ga naar structuur - blok-layout

  1. Klik bij het blokgebied navigatie op Blok plaatsen

  1. Zoek in de lijst naar Hoofdnavigatie van de categorie Superfish

  1. We overlopen de instellingen klassikaal, het zijn er veel om uit te testen!
  2. Uiteindelijk zitten we met twee soorten menu's in hetzelfde blokgebied. Schakel de niet-superfish versie uit
  3. Bekijk het resultaat

Herhalingsoefening (Deel 3)

  1. Voor de volgende oefening maak je eerst nog even twee afbeeldingsstijlen aan:

  1. We maken een overzicht aan die de bands met hun leden weergeven. Een relatie zal hier nodig zijn. Gebruik onderstaande afbeelding voor de basisinstellingen:

  1. Leg eerst de relatie: (te vinden onder Uitgebreid)

  1. We voegen nu het veld afbeelding toe en we leggen de relatie, gebruik de correcte afbeeldingsstijl:

  1. Voeg opnieuw het veld afbeelding toe, dit keer gebruik je de relatie niet, let op de afbeeldingsstijl:

  1. Je merkt nu dat de foto van de band zelf te veel getoond wordt, we gaan hier nu groeperen, dit zal ervoor gaan zorgen dat je één keer de foto van de band te zien krijgt met daaronder de verschillende leden. Klik naast onopgemaakte lijst op instellingen

  1. Kies nu bij groepeerveld nr.1 voor de afbeelding met de relatie:

  1. Tot slot gaan we bij de velden het afbeeldingsveld met relatie uitsluiten van weergave, het wordt namelijk gebruikt om te groeperen. En als dan toch bezig ben, sluit ook de titel uit van weergave:

  1. De fotootjes van de leden zouden best wel naast elkaar mogen staan. Hiervoor moeten we wat CSS toepassen. Stel het veld eerst in zodanig dat deze een CSS klasse krijgt:

  1. Verander de onopgemaakte lijst naar Raster

  1. Wanneer mensen klikken op de foto van een band dan wordt er doorverwezen naar de achterliggende inhoud
  2. Wanneer de mensen klikken op een foto van een bandlid dan start er een Colorbox. Ik gebruikte volgende instellingen:

  1. Pas de titel van het overzicht aan naar Bands
  2. Pas ook de menulink aan naar Bands
  3. Het overzicht is af, we werken even het menu af zodat 'Bands' de enige links naast Home wordt. De rest klapt uit.

Navigatie Menu

Een beeld dat je op vele website tegenkomt is een navigatie menu aan de linker of rechterkant van het scherm. Wij willen dat ook weergeven op ons overzicht van de bands.

  1. Eerst maken we een nieuw menu aan:

  1. We geven het menu een naam:

  1. Een menu zal altijd als blok worden aangemaakt. Bij de block - Layout kan je bij Right sidebar klikken op Blok plaatsen

  1. In de lijst ga je op zoek naar het vers gemaakte navigatie menu
  2. Bij de instellingen bepaal je nog even dat dit enkel op de pagina van het overzicht mag verschijnen:

  1. Sla alles even op en bekijk het overzicht van de bands: niets te zien. Dit is logisch want we hebben in ons navigatiemenu nog geen linken geplaatst.
  2. Kies Structuur - Menu's
  3. In de lijst kies je voor Menu bewerken bij Navigatie menu
  4. Vervolgens kies je voor +link toevoegen

  1. In het volgende venster bouw je nu de eerste link. Dit is natuurlijk een beetje werk om alle linken toe te voegen, maar je zal merken dat het venster je hier wel helpt:
    1. De titel moet je zelf intikken. Bijvoorbeeld The Beatles
    2. De link is gemakkelijk: tik de eerste tekens en Drupal doet een voorstel

  1. Controleer of de link goed gelegd wordt:

  1. Probeer op deze manier volgend menu te bekomen:

  1. Net zoals je eerder deze les een Superfish hoofdmenu hebt geplaatst, plaats je nu een Superfish Navigatiemenu.
  2. Gebruik wat CSS om dat menu dan want te verfijnen

ul.sf-menu.sf-style-black a, ul.sf-menu.sf-style-black a:visited, ul.sf-menu.sf-style-black span.nolink
{
HIER PLAATS JE CODE OM DE KLEUREN VAN HET MENU AAN TE PASSEN
}

#sidebar-second OF #sidebar-first
{
HIER KOMT CODE OM HET GEHEEL WAT TE LATEN ZAKKEN
}

  1. Resultaat:

Herhaling Taxonomie

We willen de bandleden categoriseren volgens instrument. Zo wil ik op termijn een knop 'Gitaristen' en bij een klik op die knop verschijnen alle gitaristen van de verschillende bands.

  1. Maak een nieuwe woordenlijst aan: Instrument
  2. Voeg volgende termen toe:
    1. Gitarist
    2. Vocalist
    3. Drummer
    4. Bassist
    5. Toetsenist
  3. Voeg bij het inhoudstype bandleden een veld toe die je in staat stelt het bespeelde instrument aan te duiden
    1. Mick Jagger --> zanger
    2. Keith Richards --> zanger, gitarist
    3. Charlie Watts --> drummer
    4. David Gilmour --> zanger, gitarist
    5. Nick Mason --> drummer
    6. Richard Wright --> zanger, toetsenist
    7. Roger Waters --> zanger, bassist
    8. John Lennon --> zanger, gitarist
    9. Paul McCartney --> zanger, bassist
    10. George Harrison --> zanger, gitarist
    11. Ringo Starr --> zanger, drummer
    12. Ron Wood --> gitarist
  4. Zorg voor mooie url-aliassen
  5. De werking van de taxonomietermen kan je voorlopig uittesten door te klikken op een bandlid en vervolgens op zijn instrument. Je ziet vervolgens een lijst van alle muzikanten die hetzelfde bespelen.

Contextuele filter

We willen de foto van de bandleden weergeven op de site bij de info over dat bandlid. Op dit moment staat die foto onder de tekst. Met CSS zouden we deze kunnen laten floaten maar dat is niet altijd een mooie oplossing. In deze oefening plaatsen we die foto in een blok om vervolgens een logische plaats, zoals first of second sidebar, te geven op de site. Hiervoor zal een contextuele filter nodig zijn. Dat is een filter die bepaalde inhoud maar weergeeft als de context goed zit.

  1. Maak een nieuw overzicht aan met volgende kenmerken:
    1. Naam overzicht: bandleden foto
    2. Inhoud van het type Bandleden
    3. Bok maken
    4. Onopgemaakte lijst van velden
    5. Voeg het veld afbeelding toe, afbeeldingsstijl: focal point 350 x 450
    6. Veld titel verborgen
    7. Alle items weergeven!
  2. Sla het blok op
  3. Ga naar Structuur - Blok-Layout en geef het blok een plaats:

First sidebar EN enkel zichtbaar op de pagina van de bandleden

Het probleem lijkt mij duidelijk, bij eender welk bandlid zien we alle foto's van alle bandleden. Niet goed!

  1. Ga achter de schermen van het overzicht
  2. Kijk bij uitgebreid en kies voor Toevoegen bij contextuele filter

  1. We voegen ID toe

  1. Geef nu als standaardwaarde de inhoud-ID uit de URL mee

  1. Sla op en bekijk!
  2. Ter afwerking zet je het veld afbeelding bij de weergave van het inhoudstype Bandleden verborgen en verhuis je het veld instrument naar de eerste plaats