← Agendapagina met Google Calendar · klus 3 van 4

Klus 3 · ± een kwartier · eenmalig

Zet de agenda op je website

Je hebt nu een agenda-ID (klus 1) en een API-sleutel (klus 2). Die twee vul je in een kant-en-klaar script in, en dat script plak je in een nieuwe pagina “Agenda” op je website. Daarna hoef je hier nooit meer aan te komen.

1

Download het script en vul twee regels in

Je downloadt het bestand agenda-embed.txt naar je eigen computer en opent het daar met Kladblok (Notepad). Bovenin, in het blok INSTELLINGEN, vul je tussen de aanhalingstekens het agenda-ID en de sleutel in. De rest van het bestand laat je staan.

agenda-embed.txt downloaden

Het blok INSTELLINGEN bovenin het script, met de regels var AGENDA_ID, var API_KEY en var MAX_ITEMS.
Daar komen ze terecht: bovenin het script, in het blok INSTELLINGEN, tussen de aanhalingstekens.
Opent het bestand in je browser in plaats van dat het wordt gedownload? Klik dan met de rechtermuisknop op de knop en kies “Link opslaan als…” en geef het de naam agenda-embed.txt. Het bestand komt in je map Downloads. Open het met Kladblok — rechtermuisknop op het bestand, “Openen met” → “Kladblok”. De naam of extensie maakt niets uit: je plakt straks gewoon de hele inhoud in je website.
2

Maak een pagina “Agenda” en plak het script erin

Maak in álle gevallen eerst een eigen pagina “Agenda” aan en zet die in het menu — zo krijgt de agenda een vaste, vindbare plek met een eigen webadres. Daarna verschilt het per websitesysteem:

JouwWeb · jouwweb.nl

  1. Log in en maak via “Pagina’s” een nieuwe pagina “Agenda” aan
  2. Voeg op die pagina een “Embed Code”-element toe (bij de elementen, onder “Overig”)
  3. Klik “Embed aanpassen”, plak de volledige inhoud van agenda-embed.txt en sla op

Google Sites · sites.google.com

  1. Open je site in de editor en maak via “Pagina’s” → “+” de nieuwe pagina “Agenda” aan
  2. Kies Invoegen → Insluiten → tabblad “Insluitcode”
  3. Plak de volledige inhoud van agenda-embed.txt en klik op “Publiceren”

WordPress · inloggen via jouwdomein.nl/wp-admin

  1. Maak via “Pagina’s” → “Nieuwe pagina” de pagina “Agenda” aan
  2. Voeg een blok “Aangepaste HTML” (Custom HTML) toe en plak daarin de volledige inhoud van agenda-embed.txt
  3. Klik “Publiceren” en zet de pagina in het menu via “Weergave” → “Menu’s”
Plakken van code vereist beheerdersrechten. Verdwijnt de code na het opslaan, log dan in met een account met de rol “Beheerder”.

Liever een plugin? Installeer via “Plugins” → “Nieuwe plugin” de plugin “List View Google Calendar”, vul in de instellingen de Google Calendar API Key en het Google Calendar ID in en zet op de pagina “Agenda” een blok “Shortcode” met [gc_list_view]. Je mist dan wel de dag-groepering en de voorpagina-variant van het script.

Werkt de agenda? Zet dan de beperking van de sleutel aan (klus 2, stap 4) en controleer nog een keer. Krijg je een foutmelding, dan staat er in de melding zelf wat er meestal aan de hand is.

3

Extra: de eerstkomende activiteiten op je voorpagina

Wil je bezoekers meteen op de homepage laten zien wat er binnenkort te doen is? Plak hetzelfde script óók op de voorpagina en zet daar in het instellingenblok DAGEN_VOORUIT op bijvoorbeeld 7 (maximaal 14). Het script schakelt dan vanzelf over op een compacte lijst: één regel per activiteit — datum, titel, tijd. Op de agendapagina laat je DAGEN_VOORUIT op 0 staan. Eén agenda, twee weergaven, allebei werken ze zichzelf bij.

jouwdorpshuis.nl — voorpagina
do 24 sepKoffieochtend10:00
Klaverjassen19:30
za 26 sepRepair Café14:00
do 1 oktKoffieochtend10:00
Handwerkclub13:30
Vergadering dorpsbelangen20:00
za 3 oktFilmavond19:30

De compacte lijst voor de voorpagina, met DAGEN_VOORUIT op 14.

Wat je verder in het script kunt instellen · bovenin, bij INSTELLINGEN · niets verplicht

  • MAX_ITEMS — hoeveel komende activiteiten maximaal worden opgehaald (standaard 50)
  • DAGEN_VOORUIT0 toont alles; 1 t/m 14 toont alleen die periode én schakelt over op de compacte lijst voor je voorpagina
  • WEERGAVE — wat er met besloten activiteiten gebeurt: 1 laat ze weg, 2 toont ze met titel, 3 toont alleen het woord “Besloten” met de tijd, zodat bezoekers zien dat de zaal bezet is zonder te weten waarvoor
  • DETAIL1 toont titel, tijd en locatie; 2 zet daar de omschrijving onder
  • GROEPEER_PER_DAG1 toont per dag één datum met alle activiteiten van die dag eronder; 0 geeft elke activiteit een eigen datumblokje

Een activiteit geldt als besloten wanneer je hem in Google op Privé hebt gezet, of wanneer de titel begint met “Besloten” of “Privé”.

Van een afspraak die op Privé staat geeft Google de titel helemaal niet vrij. Bij WEERGAVE 2 of 3 verschijnt die dus altijd als “Besloten”. Wil je de titel wél kunnen tonen, laat de afspraak dan openbaar staan en zet “Besloten” vooraan in de titel.