Externe data

Samenvatting

Een collectie kan haar inhoud uit een extern systeem halen. Je vult daarvoor het adres van een JSON-bron in bij Externe data, op het tabblad Data.

Vanaf dat moment is de inhoud alleen-lezen. De items en de tags komen uit de bron, en je beheert ze daar.

Er hoort een tweede stap bij. Je neemt de velden van de bron op in de collectie, want anders kun je ze nergens aan koppelen.

Wanneer gebruik je dit?

Je gebruikt dit als een ander systeem de baas is over de gegevens, en je ze niet op twee plekken wilt onderhouden.

Denk aan een productsysteem, een vacaturesysteem, een woningaanbod of een agenda met beschikbaarheid.

Wil je juist de andere kant op werken, en je collectie aan een ander systeem geven, lees dan Publieke data.

Gaat het om een eenmalige overname van gegevens, dan is een import de betere keuze; lees Data importeren.

Hoe werkt dit in Mach3Blocks?

Het veld Externe data is het tweede veld op het tabblad Data van de collectie-instellingen.

Er is geen schakelaar om dit aan te zetten. Het veld staat er altijd, en het invullen van een adres zet het aan.

Onder het veld staat de veldmelding "Vul hier de URL in van de te gebruiken data. De data dient in JSON te zijn met de juiste indeling."

Bij het opslaan wordt alleen gecontroleerd of het een geldig webadres is. Er wordt niet gekeken of het adres bereikbaar is.

De vereiste indeling

Naast die veldmelding staat de link Voorbeeld JSON. Die opent in een nieuw venster en toont de indeling die je bron moet hebben.

Dat voorbeeld is toegespitst op jouw collectie. Het gebruikt de sleutels van jouw eigen velden en de talen van jouw website.

Het voorbeeld heeft twee blokken naast elkaar: tags en items. Het eerste blok bevat de taggroepen met hun tags, het tweede blok bevat de items zelf.

Per item staan de naam, het webadres, de zichtbaarheidsdatums, de tags en de veldwaarden erin.

Een veldwaarde staat onder de sleutel van het veld, dus onder de key en niet onder de veldnaam.

Wat er in de collectie omschakelt

Zodra het adres is opgeslagen, ziet de collectie er anders uit.

Wat Wat er verandert
Het itemoverzicht Een alleen-lezen lijst met de eerste twintig items uit de bron, met de melding erboven
Het tagoverzicht Een alleen-lezen lijst met de tags uit de bron, met de kolommen Naam en Verbergen in filters
Het veldenoverzicht Andere kolommen: ID, Key, Type en In externe data
De veldpop-in Vraagt een Key in plaats van een Veldnaam, en de vier vinkjes vervallen
Het tabblad Imports Verdwijnt uit de balk. Een import is iets anders: die zet gegevens één keer in de collectie
Het tabblad Tags van de instellingen Filtert op de tags uit de bron; lees Collectiebron filteren
De kolom Aantal items Blijft leeg in het collectieoverzicht

Je haalt de gegevens niet één keer binnen. Het beheerscherm haalt de bron bij elke weergave op, en je website doet dat bij elke paginaweergave.

Je hoeft dus niet te publiceren om een wijziging in de bron op je website te krijgen. Publiceren is nodig voor de pagina's zelf.

De instellingen van de collectie blijven wel van jou. De sortering, de standaardlink, de detailpagina en het tagfilter stel je zelf in.

Het derde veld op dit tabblad heet 301 redirects. Het verwijst de oude adressen uit de bron door; hoe dat werkt, staat in 301-redirects.

De items en de tags zijn alleen-lezen

De items en de tags komen uit je bron. Je beheert ze daar, en niet meer in Mach3Blocks.

De velden uit de bron

Het veldenoverzicht toont alleen de velden die al in de collectie zitten. De velden uit de bron staan daaronder, in de lijst Externe velden.

Die lijst heeft twee kolommen: Key en Type. Bovenaan staat de knop Velden toevoegen, die alle velden in één keer opneemt.

Wil je er maar één, gebruik dan de actie Veld toevoegen op de rij van dat veld.

Zodra elk veld uit de bron is opgenomen, verdwijnt de lijst. Er valt dan niets meer te koppelen.

In de kolom In externe data zie je per veld een groen vinkje of een rood kruisje. Een rood kruisje betekent dat de bron dat veld niet levert.

Het type van een extern veld wordt afgeleid uit de waarde in de bron. Je kiest dat type dus niet zelf.

Stappenplan

De externe bron instellen

  1. Open het collectieoverzicht en kies de actie Instellingen op de rij van de collectie.
  2. Ga naar het tabblad Data.
  3. Open de link Voorbeeld JSON en vergelijk die indeling met je eigen bron.
  4. Vul het adres van je bron in bij Externe data.
  5. Klik op Opslaan.

De velden uit de bron opnemen

  1. Open de collectie en ga naar het tabblad Velden.
  2. Zoek onder het veldenoverzicht de lijst Externe velden.
  3. Klik op Velden toevoegen om alle velden in één keer op te nemen.
  4. Controleer in het veldenoverzicht of elk veld dat je nodig hebt erbij staat.

Staat een veld er niet bij, voeg het dan zelf toe met precies dezelfde key; lees Velden beheren.

De bron controleren

  1. Ga naar het tabblad Items van de collectie.
  2. Lees de melding boven de lijst, met daarin het adres van je bron.
  3. Controleer of de namen en de datums kloppen met wat je bron levert.
  4. Ga naar het tabblad Tags en controleer daar de tags uit de bron.

Het itemoverzicht toont de eerste twintig items. Dat is een controle en geen volledige lijst; op je website komen alle items uit de bron.

De laatste stap doe je in de editor. Daar koppel je de opgenomen velden aan de elementen van je blok; lees Element koppelen.

Voorwaarden en rechten

Je hebt het recht Collecties toevoegen nodig om de actie Instellingen in het collectieoverzicht te zien.

Heb je een collectie geopend, dan staat de knop Instellingen bovenin er altijd.

Het tabblad Velden, waar je de externe velden opneemt, zit achter datzelfde recht.

Om de gewijzigde pagina's op je website te krijgen, heb je daarnaast het recht Publiceren nodig.

De acht rechten die op een collectie werken, staan bij elkaar in Rechtenoverzicht.

Gevolgen en beperkingen

De inhoud van de collectie is vanaf nu alleen-lezen. Je voegt er geen item meer toe, je wijzigt er geen item meer, en je verwijdert er geen item meer.

Eigen items en items uit een bron gaan niet samen. Zolang er een adres staat, toont de collectie alleen wat de bron levert.

Wat Wat je merkt
De kolom Aantal items Blijft leeg, want er valt niets te tellen zolang de bron de items levert
Het tabblad Imports Staat er niet meer
De linkkiezer De items van deze collectie zijn er niet meer te kiezen
De veldnaam In de editor en in de code-instellingen zie je overal de key
Items in menu Werkt niet bij een collectie met een externe bron
Website optimaliseren Slaat deze collectie over, dus zij krijgt geen automatische teksten
Je website leunt op je bron

Elke paginaweergave haalt de gegevens bij je bron op. Ligt die eruit, dan toont je website geen items van deze collectie.

Wil je terug naar eigen beheer, maak het veld dan leeg en sla op. De collectie is daarna weer gewoon te bewerken.

Zet je Publieke data aan, dan verdwijnt dit veld uit beeld. De ingevulde waarde blijft bewaard, maar hij wordt genegeerd; lees Publieke data.

Als het niet lukt

Zie je de melding "Je hebt geen geldige URL ingevuld.", dan is het adres niet als webadres te lezen. Controleer het begin van het adres.

Toont je website geen items uit deze collectie, dan levert de bron op dat moment niets bruikbaars.

Open het adres van je bron dan zelf in een venster. Komt er geen JSON uit, of kom je op een ander adres terecht, dan is dat de oorzaak.

Mist een veld in het veldenoverzicht, voeg het dan zelf toe met precies dezelfde key als in je bron.

Klopt een veldtype niet, wijzig het dan voordat je het veld in de editor koppelt.

Na dat koppelen ligt het type vast. Je maakt het dan alleen nog los door het veld te verwijderen en opnieuw toe te voegen.

Krijg je de melding "De key is al in gebruik.", dan bestaat er al een veld met die key. Controleer het veldenoverzicht voordat je een veld toevoegt.

Zie je het tabblad Velden niet, dan mist je gebruiker het recht Collecties toevoegen.

Kun je een item niet wijzigen, dan klopt dat. De inhoud blijft alleen-lezen zolang er een adres in Externe data staat.