English, Nederlands
Doneer met PayPal

Handleiding

Handleiding

Inhoudsopgave

Over Nocterra

Nocterra is een Content Management System dat vrijheid respecteert en u helpt uitgebreide websites te bouwen met een focus op snelheid, privacy, beveiliging en toegankelijkheid.

Geschiedenis

Nocterra werd oorspronkelijk gebouwd voor de website van Stichting IRADIS, nu ASK-Solutions. Het concept van content management systemen was nieuw en CMS systemen zoals Drupal, WordPress en Joomla bestonden nog niet. Het enige volwassen product was Microsoft Frontpage en het net uitgebrachte Adobe DreamWeaver. Beide waren geen content management systemen, maar een computerprogramma waarmee je een website kon ontwerpen, op een vergelijkbare manier als een programma als Microsoft Paint of Jasc Paint Shop Pro waarmee je een afbeelding kan maken die je vervolgens kunt afdrukken of uploaden naar een server. Het enige CMS in die tijd was TYPO3, waarvan de ontwikkeling net was begonnen. Omdat FrontPage eigendom was, paste het ontwerpen van onze website met FrontPage niet bij onze visie en onze bijdragen aan het W3C. Daarnaast was FrontPage een zeer omslachtig stuk software als het werd gebruikt voor websites die groter waren dan een handvol pagina's. Daarom heette Nocterra aanvankelijk BackPage.

De daaropvolgende jaren werd BackPage verder ontwikkeld en bijgewerkt om aan te sluiten bij de ontwikkeling die gaande was om HTML om te zetten in een open internetstandaard en semantiek te scheiden van opmaak met de ontwikkeling van CSS. BackPage werd hernoemd naar Synergos samen met een poging om online verkopen te integreren in een website; om een online marktplaats voor individuen en kleine bedrijven te creëren. De ontwikkeling van dit concept werd stopgezet toen Etsy populair werd.

In 2019, na de Great server crash™, werd het project hernoemd naar Nocterra met een complete herschrijving van de code. De directe afhankelijkheid van MySQL werd losgelaten en de focus lag op het creëren van een contentmanagementsysteem zonder een geïntegreerde GUI, geen vereiste voor een SQL-database, een kleinere footprint en meer flexibiliteit en uitbreidbaarheid in gedachten. In tegenstelling tot andere CMS'en die door propriety-partijen van het libre naar het open source principe zijn overgestapt, vaak een combinatie van open source en propriety-code met pingbacks, telemetriegegevens die worden teruggestuurd en registratie vereisen, is Nocterra nog steeds en zal het altijd echt vrije software blijven zonder dergelijke componenten die geen vrijheid respecteren.

Installatie

Het installeren van Nocterra komt in principe neer op het downloaden van de nieuwste Nocterra-release, het uitpakken en de uitgepakte bestanden naar de document root directory van uw webserver of hostingplan kopiëren.

Zie de installatiehandleiding.

Storage engine

De ingebouwde storage engines zijn de locale_prefix_menu, locale_prefix en locale_directory storage engines. De standaard is locale_prefix.

locale_prefix

De locale_prefix is de meest basale storage engine, het meest geschikt voor kleinere websites. De inhoud van de pagina's van de website worden opgeslagen in de data/ directory. Elke pagina wordt opgeslagen in een los bestand, met de naam van de URL met slashes omgezet in liggende streepjes _ en voorafgegaan door de taalcode.

Let op: Nocterra is ontworpen om speciale tekens zoals spaties, dollar- en pondtekens weer te geven als mintekens -.

data/en_
data/en_about
data/en_menu
data/en_menu_todays-special
data/sp_
data/sp_sobre
data/sp_menu
data/sp_menu_especial-de-hoy
data/nl_
data/nl_over
data/nl_menu
data/nl_menu_specialiteit-van-de-dag

Bovenstaande pagina's zouden de pagina's kunnen zijn voor een meertalige restaurantwebsite. De website staat uit een startpagina data/en_, data/sp_ en data/nl_ weergegeven op https://www.example.com/, https://www.example.sp/ en https://www.example.nl/ .

Een pagina over het restaurant data/en_about, data/sp_sobre en data/nl_over weergegeven op https://www.example.com/about, https://www.example.sp/sobre en https://www.example.nl/over.

Een pagina voor het menu van het restaurant data/en_menu, data/sp_menu en data/nl_menu geserveerd op https://www.example.com/menu, https://www.example.sp/menu en https://www.example.nl/menu.

En een pagina voor het menu van de dag data/en_menu_todays-special, data/sp_menu_especial-de-hoy en data/nl_menu_specialiteit-van-de-dag geserveerd op https://www.example.com/menu/todays-special, https://www.example.sp/menu/especial-de-hoy en https://www.example.nl/menu/specialiteit-van-de-dag.

Content

Elke entry in de storage engine, een regulier bestand voor de locale_prefix, bevat de HTML voor de pagina body. De pagina body wordt hierbij niet gedefinieerd als het HTML <BODY> element, maar de daadwerkelijke semantische body van een website, d.w.z. de tekstuele content als koppen, paragrafen en afbeeldingen. Elk bestand kan ook PHP-codefragmenten bevatten om dynamische content te genereren en/of Nocterra API-functies aan te roepen.

<?php

setTitle('Over mijn website');
addKeywords('john do, op maat gemaakte kleding, new york city');

?><H3>Welkom op mijn website</H3>

<P>Ik ben een kleermaker in New York City. Ik maak kleding die ik speciaal voor u maak.…

Linkgeneratie

Noctera biedt een krachtige linkgeneratiemethode. Het genereert cross-domein meertalige links. Het makt gebruik van de gedefinieerde menuconfiguratie om leesbare SEO-geoptimaliseerde URL's met metagegevens naar pagina's te bieden. Op deze manier hoeft u niet voor elke pagina op uw website in elke taal alle URL's bij te houden. Beheer SEO-informatie zoals canonieke URL's en noindex vanaf een centrale locatie.

Tijdens de linkgeneratie worden links naar lokale bronnen zoals afbeeldingen en scripts herkend eb om de gebruikerservaring en SEO te verbeteren, worden deze URL's voorzien van een timestamp. Door dit te doen, mogen browsers, bots en sociale mediaplatforms de bronnen voor een lange periode cachen, zonder dat de gebruiker nieuwe of bijgewerkte versies niet ziet bij een bezoek aan uw website.

<A href=".">Tekst</A>
Link naar de huidige pagina in de huidige taal.
<A href=":fr:.">Text</A>
Link naar de huidige pagina in het Frans.
<A href="#chapter1">Hoofdstuk 1: Foo</A>
Link naar de huidige pagina met de opdracht aan de browser om naar het anker chapter1 te springen.
<A href="/">Tekst</A>
Link naar de startpagina in de huidige taal.
<A href=":sp:/">Texto</A>
Link naar de startpagina in het Spaans.
<A href="/#donatie">doe een donatie</A>
Link naar de startpagina die de browser opdracht geeft om naar het anker donatie te springen.
<A href="/foo">Tekst</A>
Link naar de foo-pagina in de huidige taal.
<A href=":nl:/foo">Text</A>
Link naar de foo pagina in het Engels.
<A href="/foo#far">Foo Far</A>
Link naar de foo pagina die de browser instrueert om naar het anker far te springen.
<A href="/foo/bar">Tekst</A>
Link naar de bar subpagina in de huidige taal.
<A href=":sw:/foo/bar">Text</A>
Link naar de bar subpagina in het Zweeds.
<A href="/foo/bar#far">Bar Far</A>
Link naar de bar-pagina die de browser instrueert om naar het anker far te springen.
<A href="https://www.grayjay.app/">Grayjay</A>
Link naar een externe website.
<A href="https://www.gnu.org/licenses/gpl-3.0.txt" download>download de GPL-licentie</A>
Link naar een bestand op een externe website en instrueer de browser om het te downloaden in plaats van het te tonen.
<SCRIPT src="https://www.gnu.org/scripts/ease.js"></SCRIPT>
Embedden van het GNU ease.js-framework in de pagina vanaf hun website.
<IMG src="images/howard-selfie.jpg">
Embedden van een foto van Howard automatisch voorzien van een timestamp in de pagina.
<IMG src="Icon{images/british_flag.jpg}">
Embedden van een afbeelding van de Britse vlag uit de Icon imageset automatisch voorzien van een timestamp in de pagina.
<SCRIPT src="scripts/bouncyball.js"></SCRIPT>
Embed het bouncy ball javascript automatisch voorzien van een timestamp in de pagina in.