home | sitemap

De basis

Een minimaal html-bestand ziet er als volgt uit:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
  <!-- TMPL_VAR NAME="xcmsHead1" -->
  <link rel="stylesheet" type="text/css" href="/css/style/style.css">
  <!-- TMPL_VAR NAME="xcmsHead2" -->
</head>
<body>
  <!-- TMPL_VAR NAME="xcmsSaveForm" -->
  <!--no_index-->
  <div id="menu">
    <!-- TMPL_VAR NAME="menu" -->
  </div>
  <!--/no_index-->
  <div id="tekst">
    <!-- TMPL_VAR NAME="tekst" -->
  </div>
</body>
</html>

Op zich is bovenstaande al (bijna) een geldig XHTML document.

De met <!-- TMPL_VAR NAME=”…” --> weergegeven variabelen worden door cms ingevuld. Dit kunnen de standaard variabelen van het cms zijn, of de zelf opgegeven stijl-variabelen.

xcmsHead1 

Bevat de bekende (meta)tags als title, base, description, keywords, en enkele andere. Deze variabele moet als eerste in de <head> staan, tenzij er een hele goede reden is er andere tags voor te zetten.

NB: Neem direct na deze variabele de stylesheet(s) op voor de vormgeving, want met xcmsHead2 worden stylesheets van het cms ingevoegd die waar nodig zaken 'overrulen'.

xcmsHead2  

Bevat enkele javascript en stylesheets nodig voor de juiste werking van het cms. De standaard javascript funcites van het cms kunnen ook gebruikt worden door de vormgeving.

NB: als bijvoorbeeld javascript nodig is voor de vormgeving die geïnitialiseerd moet worden op de window.onload, gebruik dan de cms-aanroep AddToInitArray(<functienaam>) om te voorkomen dat het cms niet meer werkt.

Na <!-- TMPL_VAR NAME=”xcmsHead2” --> is de vormgever vrij om al het mogelijke dat (X)HTML toestaat toe te voegen aan de <head>. 

xcmsSaveForm   Bevat data voor de juiste werking van cms, zoals huidige pagina, padinformatie, etc. maar ook de tekst ingevoerd door de redacteur als deze bewaard wordt.  
menu   Bevat het menu van de website.
tekst   De tekst (incl. tabellen, verwijzingen naar afbeeldingen, etc.) zoals ingevoerd door de redacteur.  
edit  Deze variabele geeft aan of de html pagina in het cms gebruikt wordt of niet. Zie 'Overige variabelen' voor meer belangrijke informatie.

De DIV om de menu en tekst variabele is verplicht!

Naast de verschillende TMPL_VAR’s bestaan er ook TMPL_IF’s. Via deze kan het cms conditioneel delen van de html tonen of juist niet. Bijvoorbeeld een <!-- TMPL_IF NAME=”edit” -->...<!-- /TMPL_IF -->. Als de variabele edit gezet is is zal de html tussen de twee TMPL_IF's getoond worden, anders niet. Lees het aparte hoofdstuk voor uitleg en meer voorbeelden van het gebruik van TMPL_VAR'S en TMPL_IF's.

De plaats van xcmsSaveForm, menu en tekst zijn vrij te bepalen en kunnen dus op elke gewenste plek in de te realiseren vormgeving/html worden opgenomen. Het staat de vormgever verder vrij om bovenstaande minimale html uit te breiden met de gewenste html-tags, etc.

<!--no_index--> wordt gebruikt om te cms eigen zoekmachine te instrueren dat alles tussen een <!--no_index--> en <!--/no_index--> niet moet worden geïndexeerd. Zie Zoekmachine.

In het cms kun je net als een bezoeker door de website heen klikken. Om dat te kunnen moet het cms alle hyperlinks in de html pagina in de gaten houden: als het een link is naar een interne pagina, dan zal deze pagina worden geladen. Is het bijvoorbeeld een link naar een plaatje, dan wordt er een popup getoond.

Het cms houdt standaard alle hyperlinks van het menu (=alle hyperlinks in de DIV met ID menu) en het tekstvlak (= DIV met ID tekst) in de gaten. Daarnaast houdt het cms links in de gaten in de elementen met de volgende ID's:

Deze ID's komen voort uit het gebruik van standaard variabelen van het cms (Zie 'Standaard variabelen') en veelvoorkomende onderdelen van een website. Zo zal het ID footer zeer waarschijnlijk worden gebruikt voor een balk aan het eind van een pagina met daarin eventueel een link naar een contact-, disclaimer- en privacy-pagina. sitewide staat eventueel voor een UL met linkjes naar de homepage, zoekmachine, sitemap en print-functie.

Alle andere hyperlinks in de html pagina die niet in een van de elementen met bovengenoemde ID staan volgt het cms niet standaard. Zou een redacteur op zo'n link klikken, dan kan het zijn dat het cms niet meer correct werkt. Om als vormgever aan te geven dat een bepaald element met links door het cms gevolgd moet worden, dient dat element de classname xcms_onclick mee te krijgen, bijvoorbeeld

...
<ul id="mijn-linkjes" class="x­cms_onclick"> <!-- alle linkjes in deze UL volgen... -->
  <li><a href="http://www.google.com">mijn eerste link</a></li>
  <li><a href="/website/m000123/p000456">mijn tweede link</a></li>
</ul>
...
<a class="x­cms_onclick" href="http://www.google.com">mijn derde linkje</a> <!-- en deze link -->
...

NB: het cms zal deze classname (alleen xcms_onclick als er nog meerdere namen in staan of het complete class-attribuut als deze alleen xcms_onclick bevat) tijdens het publiceren verwijderen. Deze classname is dus alleen beschikbaar in het cms en moet niet voor opmaakdoeleinden gebruikt moeten worden.