Documentatie
Moeilijkheidsgraad:
Configuratie - Klant Pagina - Content Pagina's - Content Blok

Een content blok is een stuk HTML dat je op meerdere plekken in je klantpagina's toont: boven de kalender, in de stappen van het boekingsdialoog, in een menu of als header en footer van een thema. Een blok is een Smarty-template. Naast gewone HTML kun je dus variabelen ({$prod_desc}) en tags ({ext mod="menu" id="…"}) gebruiken. Zo maak je één blok dat voor elk product de juiste naam, foto en kenmerken toont.

Het zijpaneel in de editor

Open een content blok via Configuratie > Klant Pagina > Content Pagina's > Content Blok. Rechts naast de editor zie je:

  • In gebruik op — alle kalenders, dialoogstappen, menu's, thema's en widgets die dit blok tonen.
  • Productvariabelen en combivariabelen — met per groep op welke plekken ze gevuld zijn en waar ze leeg blijven.
  • Tags — kant-en-klare voorbeelden van tags die in elk blok werken.

Klik op een variabele of tag om die op de positie van de cursor in te voegen, zowel in de broncode als in de visuele editor.

Waar worden de variabelen gevuld?

Een variabele heeft alleen een waarde als op die plek een product bekend is:

PlekGevulde variabelen
Kalender en de stappen opties, vragen, deelnemers, spelers en extra veldenProduct en, bij een combi, combi
Native widget (content blok per product)Product
Index, login, checkout, menu, thema header/footer en overige pagina'sGeen productvariabelen — deze blijven leeg

Staat hetzelfde blok op beide soorten plekken? Dan waarschuwt het zijpaneel dat de productvariabelen op een deel van de plekken leeg blijven.

Voorbeeld: productintroductie boven de kalender

<div class="product-intro">
    <img src="{$object_image}" alt="{$prod_desc}" class="img-fluid">
    <h3>{$prod_desc}</h3>
    {$obj_long_desc nofilter}
    <p>Geschikt voor: {$obj_txt_custom03|default:"alle leeftijden"}</p>
</div>
  • {$object_image} is het webadres van de standaardafbeelding van het product. Zet het daarom in een <img src="…">.
  • Lange teksten zoals {$obj_long_desc} bevatten HTML. Voeg nofilter toe, anders zie je de HTML-code als tekst. Het zijpaneel doet dit automatisch.
  • |default:"…" toont een vaste tekst als het kenmerk leeg is.

Voorbeeld: kenmerk (ja/nee)

{if $obj_chk_custom01}
    <p class="alert alert-info">Rolstoeltoegankelijk</p>
{/if}

Voorbeeld: onderdelen van een combi

<h3>{$combi_desc}</h3>
<ul>
{foreach $combidetail as $combidetailrow}
    <li>{$combidetailrow.obj_desc}</li>
{/foreach}
</ul>

Controle bij opslaan

Bij het opslaan wordt het blok gecontroleerd. Het wordt niet opgeslagen bij:

  • een fout in de template, bijvoorbeeld een {if} zonder {/if} of een onbekende tag;
  • variabelen in de schrijfwijze van e-mailtemplates, zoals {OBJ_DESC}. Gebruik in een content blok {$obj_desc}: de namen zijn gelijk, alleen de schrijfwijze verschilt;
  • onderdelen die om veiligheidsredenen niet zijn toegestaan, zoals serverinstellingen of het inladen van bestanden.

Gebruik je een tag die alleen intern bedoeld is (zoals {seo}), dan wordt het blok wel opgeslagen met een waarschuwing.

Content blok in de native widget

In de instellingen Functioneel van een native widget kies je bij Content blok per product een blok. De widget toont het blok bij het gekozen product, gevuld met de productvariabelen. Scripts en tags die de klantpagina nodig hebben (zoals {ext}) werken niet in de widget; de HTML wordt voor de veiligheid opgeschoond.

JavaScript in een blok? Zie Kan ik code toevoegen aan een content blok?