5 berichten aan het bekijken - 1 tot 5 (van in totaal 5)
  • Q:
    Inactief
    Anoniem

    Website maken in meerdere talen

    Ik moet een website maken die beschikbaar is in 3 talen,
    zijn er misschien trucjes of handige tips om dit sneller of makkelijker te laten verlopen?

    Ik heb een goede kennis van Html en CSS.

    Bijdrager
    Lesliedec

    werk je met een database achter de website of is het enkel HTML?

    in het laatste geval zal je al niet veel anders kunnen dan ofwel 3 versies van de website aanmaken, ofwel via Javascript ofzo bij ieder ding dat je op de website zet de taal die gekozen is bepalen en de bijhorende tekst afdrukken.

    Bijdrager
    Wiebo

    Installeer WordPress op je server en gebruik de plugin qtranslate. Zowel front als back end kan je daarmee van taal laten switchen.. Als je goeie kennis van html en css heb moet je zeker in staat zijn een WordPress thema te maken of aan te passen

    Bijdrager
    Jakko Westerbeke

    Als de webserver het ondersteunt is dit niet moeilijk; aangenomen dat de server Apache draait (ik weet niet hoe het bij andere webservers zit) moet mod_negotiation geladen zijn, en dan kun je heel eenvoudig verschillende bestanden maken met de taalcode in de naam. Bijvoorbeeld:
    [code:1:f38344e735]index.nl.html
    index.en.html
    index.ru.html
    header.nl.png
    header.de.png
    header.fr.png[/code:1:f38344e735]
    enz.

    Wel aan te raden is om ook een “basisversie” van elk bestand te maken, zodat de server daarop terug kan vallen als de door de gebruiker gewenste taal niet beschikbaar is. Stel dat je Nederlands als standaard wilt gebruiken, dan geef je de Nederlandstalige bestanden gewoon geen .nl mee in de naam — zodat index.html in het Nederlands zal zijn, en elke andere taal wel een taalcode in de bestandsnaam heeft.

    Als dit niet onmiddellijk werkt moet je ook nog even een .htaccess-bestand in de hoofdmap van de site zetten met daarin:
    [code:1:f38344e735]AddLanguage nl .nl
    AddLanguage en .en
    AddLanguage fr .fr[/code:1:f38344e735]
    enz.

    Werkt dit ook niet, dan staat de server niet goed ingesteld en zul je bij de admin daarvan moeten klagen …

    Bijdrager
    Pivni Pes

    Ik gebruik zoiets als dit, ik weet niet of dat het perfect is, maar bij mij werkt het goed.

    [code:1:1cbebd5320]<? error_reporting(E_ALL); ?>
    <?
    // url als: index.php?lang=nl&page=content
    // je kunt ook een of beide parameters weglaten.
    // in dat geval wordt een standaardtaal of pagina gebruikt.
    // als de pagina niet blijkt te bestaan wordt een standaardpagina gebruikt.

    // array waarin alle mogelijke talen staan. In jouw geval nl, cz enzovoort.
    // de eerste entry is meteen de standaardtaal: als geen taal wordt gespecificeerd
    // in de url wordt deze gebruikt.
    $langs = array(’nl’, ‘cz’, ‘de’, ‘en’);

    // standaardpagina:
    // als de opgegeven pagina niet bestaat wordt deze ingevoegd
    // dit is bijvoorbeeld een 404-pagina of de standaardcontentpagina (include/nl_content.php)
    $standardinclude = ‘include/fout.php’;

    $lang = (isset($_GET[’lang’]) && !empty($_GET[’lang’])) ? $_GET[’lang’] : ‘nl’;
    $page = (isset($_GET[’page’]) && !empty($_GET[’page’])) ? $_GET[’page’] : ‘content’;

    // Controleren of de gegeven taal bestaat
    if(!in_array($lang, $langs)){
    $lang = $langs[0];
    }
    $head = ‘include/’ . $lang . ‘-head.php’;
    $menu = ‘include/’ . $lang . ‘-menu.php’;
    $bladeren = ‘include/’ . $lang . ‘-bladeren.php’;
    $content = ‘include/’ . $lang . ‘-‘ . $page . ‘.php’;
    //$footer = ‘include/’ . $lang . ‘-footer.php’;

    // Je kunt er van uit gaan dat de header, navigatie en footer bestaan,
    // die heb je namelijk zelf ingesteld, en de taal bestaat.
    // Dus controleren we alleen of de contentpagina bestaat.
    if(!file_exists($content)){
    $content = $standardinclude;
    }
    ?>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <? include($head); ?>
    <? //include("include/head.php"); ?>
    </head>

    <body>
    <?
    include($head);
    include($menu);
    include($bladeren);
    ?>

    </body>

    </html>[/code:1:1cbebd5320]

5 berichten aan het bekijken - 1 tot 5 (van in totaal 5)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.