Auteur: thorn (van het WB forum)
Veel vragen in het WB forum zijn gerelateerd aan het verkeerd weergeven van bepaalde karakters in de inhiud van de website of in het menu. Dit probleem komt mede door het slechte support van UTF-8 bij WB versies tot v2.6.5. Een van de meest interessante mogelijkheden sinds WB v2.6.6 is de UTF-8 ondersteuning.
Hieronder staan de defenities van de termen karakterset en collatie, welke in dit hoofstuk regelmatig gebruikt worden.
Als U problemen hebt met het juist weergeven van karakters, zou U allereerst moeten overwegen om een upgrade uit te voeren naar de laatste beschikbare WB versie. Vanaf WB v2.6.6 en verder, dient men de volgende instelling te doen via de WB backend: Instellingen -> Bekijk geavanceerde opties -> Karakterset -> utf-8. Andere karaktersets werken ook, maar het aanhouden van utf-8 zal veel problemen voorkomen. Ook als de laatste Website Baker versie al is geïnstalleerd, kunnen de volgende problemen nog voorkomen.
Check of de volgende regels zijn opgenomen in het bestand index.php van uw template:
<meta http-equiv="Content-Type" content="text/html; charset=<?php
if(defined('DEFAULT_CHARSET')) { echo DEFAULT_CHARSET; } else
{ echo 'utf-8'; }?>" />
Als U reden #1 kunt uitsluiten, check dan de karakterset die gebruikt wordt door de browser. Als de browser ingesteld staat op een nadere waarde dan utf-8 (bijv. ISO-8859-1) dient men de browser-instellingen te wijzigen. Als U de browser wilt forceren om utf-8 te gebruiken voor alle pagina's, plaats dan een .htaccess bestand in de WB root folder. Dit vereidt het gebruik van een Apache webserver.
<Files .htaccess>
order allow,deny
deny from all
</Files>
php_value default_charset UTF-8
Bovenstaande uitdrukking forceert de Apache webserver om alle php gegenereerde pagina's te versturen met utf-8 encodering.
Als U gebruik maakt van Cyrillisch, is bijv. "И" en "ш" beïnvloedt, voor Grieks kan bijv. "ή" verkeerd weergegeven worden.
De standaard karakteset kan worden gewijzigd door de MYSQL-bestanden my.ini of my.cnf. Als er geen karakterset is gedefinieerd in deze bestanden, zal latin1 gebruikt worden als standaard karakterset door MYSQL. Als U een andere karakterset kiest dan latin1 bij het aanmaken van de database (bijv. met phpmyadmin), dient U deze waarde als standaard karakterset toe te voegen. Met andere woorden, de karakterset die gebruikt wordt tijdens het aanmaken van de database moet overeenkomen met de standaard karakterset en vice versa. Als de karakterset van de database en de standaard karakterset niet overeenkomen, zullen karakters verkeerd weergegeven worden.
Als uw service-provider een andere standaard karakterset definieert dan latin1, door gebruik te maken van my.ini, staan de volgende opties tot uw beschikking.
Opmerking:
Optie 2 vereist het handmatig aanmaken van de WB database door gebruik te maken van bijv. phpmyadmin. Het is niet mogelijk om de installatieroutine van de WB installatie-wizard te gebruiken, omdat WB latin1 als standaard gebruikt. U dient zich er van te verzekeren dat de karakterset van alle DB-tabellen ingesteld is als de standaard karakterset.
Copyright (c) 2007 Website Baker Hilfe Team
Tekst en afbeeldingen uit deze pagina zijn onderworpen aan een Creative Commons Attribution-NonCommercial-No Derivative 3.0 Licentie. Het is toegestaan om dit werk te kopieëren en distribueren voor niet-commerciële doeleinden, mits er geen wijzigingen worden aangebracht en deze copyright mededeling en een link naar http://help.websitebaker.org worden bijgevoegd.