typo3, typo3hoster, typo3host, typo3 hosting, cms, content managenment, typo3 design, open source cms

TYPO3 kan door gebruik van Plugins (zogenaamde extensies, kleine uitbreidingsprogramma's) aan speciale situaties aangepast worden. Dit wil zeggen dat door middel van deze extensies de functionaliteit van TYPO3 verder uitgebreid kan worden. Op dit moment zijn er meer dan 3000 extensies beschikbaar, waarmee zeer veel toepassingen mogelijk zijn, zonder dat u hiervoor zelf hoeft te programmeren. Voorbeelden hiervan zijn een uitgebreid nieuwssysteem, winkels of discussiefora. Grote voordelen van dit systeem zijn de meertaligheid van Front- en Backend, als de actieve gebruikers- en ontwikkelaarscommunity over de gehele wereld.

 

Gebruik
Schattingen zijn dat TYPO3 meer dan 200.000 keer ingezet is voor websites. Toonaangevende gebruikers in de Benelux zijn onder meer de Technische Universiteit Eindhoven, het Verbond van Verzekeraars, het Ruimtelijk Planbureau, de omroepverenigingen VARA, LLINK en TROS, Technische Universiteit Delft, de Erasmus Universiteit en werknemersorganisatie CNV.

De opleidingsperiode voor een website-ontwikkelaar bedraagt enkele weken, voor een redacteur enkele uren. Zo moet een ontwikkelaar, die een TYPO3 website maken wil, bijvoorbeeld de configuratietaal Typoscript beheersen.

In tegenstelling tot commerciële programmatuur is er bij TYPO3 geen support door de fabrikant/ontwikkelaar, maar verloopt via de gebruikerscommunity (fora, nieuwslijsten) en een groot aantal internetbedrijven. Deze bedrijven hebben zich gespecialiseerd door TYPO3 websites te bouwen of hosting aan te bieden met TYPO3 voorgeïnstalleerd.

Bediening
TYPO3 wordt op een webserver via een webbrowser aangestuurd. Voor de bediening is geen extra programmatuur voor de redacteur nodig, behalve dat de webbrowser ondersteund dient te worden. TYPO3 biedt verschillende toepassingsmogelijkheden, die zich grofweg in de onderdelen ontwerp, Typoscript en inhoud laten onderverdelen. Dit leidt tot een bepaalde complexiteit, die men als sterkte van het systeem, maar wellicht ook als zwakte interpreteren kan.

De verwerking gebeurt in het in de webbrowser zichtbare deel van TYPO3, het backend, waarin inhoud gemaakt en onderhouden kan worden. Met een Rich-Text-Editor, vergelijkbaar met tekstverwerkers als MS Word, kunnen teksten eenvoudig bewerkt en vormgegeven worden door een redacteur. Ook biedt het systeem voor bewerking van inhoud de mogelijkheid dit direct te doen in de website pagina (de “frontend”, tevens het zichtbare gedeelte van de website voor bezoekers). Deze optie dient door de beheerder vrijgegeven en aangeboden te worden aan een redacteur en biedt een snelle ingang in TYPO3.

Terminologie
Het gebruik van de termen front- en backend wijkt af van de klassieke terminologie. Volgens deze klassieke terminologie zal TYPO3 twee frontends hebben voor verschillende gebruikerscategorieën. Zie Frontend (klassieke definitie) en Backend (klassieke definitie).

Functionaliteit
Tot de functies behoren onder andere tijdgestuurd publiceren en verwijderen van inhoud, een rollen en rechtensysteem, zoeken in statische en dynamische inhoud, automatisch genereren van een sitemap, printvriendelijke pagina's, gebruikersbeheer, meertaligheid, zoekmachinevriendelijke URL's, die zich met modules (zogenaamde extensies), zoals gastenboeken, fora, nieuwsbrief, statistieken laten uitbreiden. Beelden, tekst, tabellen, animaties als externe databronnen kunnen in TYPO3 worden beheerd.

Templates (sjablonen) maken de verwerking van inhoud gemakkelijk. In deze templates worden de pagina-opbouw en vormgeving gedefinieerd, bijvoorbeeld op welke plaats de menu's en inhoud getoond wordt, de grootte en kleur van de letters of de positionering van de koppen. Inhoud kan ingevoerd worden met vrij configureerbare invoervelden, bijvoorbeeld een Rich-Text-Editor, die een WYSIWYG-interface biedt, gebaseerd op gangbare tekstverwerkingsprogramma's. Een geïntegreerde beeldverwerker is voorhanden. De Objectmanager laat toe grafische elementen te schalen, te draaien, kaders toe te voegen, waarbij TYPO3 de gewijzigde beelddata met de beeldconverter ImageMagick en GDLib in een nieuw formaat opslaat.

De ingevoerde inhoud wordt in een database opgeslagen en staat onafhankelijk tot de beschikking van de toegepaste sjabloon. Hierdoor kan de visuele presentatie van de website op elk moment gewijzigd worden door de uitwisseling van de sjablonen, zonder dat de inhoud verandert dient te worden. Zo kan ook dezelfde inhoud in verschillende opmaken getoond worden. Een geïntegreerd cachingsysteem slaat de gegevens van frequente aanvragen op. Via deze manier wordt de processorbelasting van veel opgevraagde pagina's verlaagd.

De organisatie en programmering met TYPO3 bestaat uit de volgende elementen: HTML-sjabloon: Bestand met zogenaamde markers (bijvoorbeeld ###MARKER###), die door TYPO3 met de juiste inhoud (navigatie, tekst, beeld) vervangen worden. Als alternatief kunnen deze markers door de extensie 'Template Autoparser' automatisch gegenereerd worden. Typoscript template: In deze interne configuratietaal wordt omschreven waarmee TYPO3 de markers dient te vervangen. Daarnaast kunnen hiermee de inhoudselementen geconfigureerd worden.

 

Als alternatief is het mogelijk om de weergave van pagina's in zijn geheel via Typoscript te laten verlopen, zonder gebruik te maken van HTML-sjabloonbestanden met markers. Dit wordt in het bijzonder geadviseerd voor ervaren TYPO3-ontwikkelaars bij XHTML-pagina's, waarbij de HTML-elementen tot enkele div's beperkt zijn.  PHP: De achterliggende programmeertaal voor TYPO3-functionaliteit (Hiermee werken de veeleisende gebruikers, wanneer zij TYPO3 uitbreiden)  TYPO3 constanten Paginaboom

Ontwikkeling
Geestelijk vader en voormalig hoofdontwikkelaar van TYPO3 is de Deen Kasper Skårhøj. De actuele versie is 4.2, die in april 2008 verscheen. Een belangrijk verschil met voorgaande versies is dat vanaf versie 4.2 TYPO3 geen PHP4 meer ondersteund. In versie 4 zijn enkele veelgevraagde eigenschappen toegevoegd, zoals de scheiding van bewerken en publiceren (Workspaces), de database-abstractielaag DBAL, een nieuwe tekstverwerker en snelheidsverbeteringen. Met de database-abstractielaag DBAL is het mogelijk om met andere databases te werken dan MySQL, zoals PostgreSQL of Oracle. Versie 3.8.1, uitgebracht op 14 november 2005 bevatte onder andere de ondersteuning voor GraphicsMagick en maakte de tussenopslag van pagina's op proxyservers mogelijk. Op 26 september 2004 werd versie 3.7 uitgebracht, die een nieuwe TYPO3-engine bevatte. Versie 3.6 van TYPO3 kwam uit op 30 april 2004. De belangrijkste vernieuwing van deze versie was de XHTML-conforme broncode van de standaard inhoudselementen.

Naast de ontwikkeling van de 4.x-tak, geleid door Michael Stucki, waarvoor onder andere een verbetering van het gebruiksgemak van het backend is gepland, is men begonnen aan de ontwikkeling van TYPO3 5.0. Dit project, geïnitieerd en geleid door Robert Lemke, legt zich toe op een geheel nieuwe architectuur van het systeem.

Ontwikkelen van eigen extensies
TYPO3 wordt intern aangestuurd met verschillende PHP-arrays. Zij bevatten alle informatie om HTML code uit content te genereren via Typoscript instellingen. In de regel kan men bijna elke uitgifte en veel backend instellingen door veranderingen aan de configuratie in deze arrays aanpassen. Bij de verwerking van PHP-scripts is het gebruikte geheugen niet onbelangrijk.

Het ontwikkelen van TYPO3-eigen extensies gaat met minimale PHP kennis redelijk snel. Aan te bevelen is het gebruik de TYPO3-extensie “Kickstarter”, waarmee eenvoudig de basis voor de gewenste functionaliteit neergezet kan worden. Naar wens kan men hiermee zowel frontend als backend uitbreidingen uitkiezen. De benodigde functionaliteit wordt gewoonlijk in de TYPO3 configuratie array TCA vastgelegd. De geproduceerde extensie bevat bestanden, met vooraf vastgelegde namen, die automatisch aangeroepen worden, bijvoorbeeld localconf.php. De programmeur hoeft alleen nog maar de nodige PHP functies te schrijven, waarbij veel gebruikte functies, die al voorhanden zijn, gekopieerd en aangepast hoeven te worden. Na de installatie van de extensie test TYPO3 automatisch of de extensie zich aan de TYPO3 standaarden houdt.

De PHP-broncode, die vanaf versie 4.2 alleen door PHP versie 5 wordt ondersteund, bestaat gewoonlijk uit bestanden, die altijd een class bevat. De programmering is niet object georiënteerd, maar gebruikt classes eerder in de betekenis van modules. Elke class bevat aan het eind een zogenaamde XCLASS. Deze kunnen door de extensie ontwikkelaar zelf worden gedefinieerd met een bepaald naampatroon en zouden moeten worden afgeleid uit de originele class. Zij worden dan altijd gebruikt in plaats van de originele class.