Seite 1 von 1

Language-Switch - Flags

Verfasst: Di 10. Dez 2013, 15:46
von rethus
Hallo,
gibt es gute varianten des Language-Switchers, ggf. schon direkt mit Flaggen?

Re: Language-Switch - Flags

Verfasst: Di 10. Dez 2013, 16:41
von Faar
Ich habe meinen so gestaltet, dass es "durchblättert".
Also man kommt von Sprache zu Sprache bis man wieder bei der Anfangssprache ist.
Optimal ist das natürlich bei vielen Sprachen nicht, aber Platzsparend.

Re: Language-Switch - Flags

Verfasst: Di 10. Dez 2013, 18:15
von homtata
Hallo rethus,

ich hab mir für einen Kunden mit 6 Sprachen was gebastelt - allerdings entspricht die Reihenfolge der Ausgabe nicht der Reihenfolge der Sprachen in Contenido selbst, daher ist ein Array vorgeschaltet, das die Sprachen hier erneut definiert.

Modul Ausgabe:

Code: Alles auswählen

<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname  :      Hilfsnavigation
* Author(s)   :     Andreas Lindner
* Copyright   :     Contenido - four for business, Andreas Lindner
* Created     :     05.08.2005
************************************************/

$flag = array();
$flag[1]["abbr"] = "de";
$flag[1]["name"] = "Deutsch";
$flag[1]["status"] = "";
$flag[1]["lang"] = "1";
$flag[2]["abbr"] = "en";
$flag[2]["name"] = "English";
$flag[2]["status"] = "";
$flag[2]["lang"] = "2";
$flag[3]["abbr"] = "fr";
$flag[3]["name"] = "Français";
$flag[3]["status"] = "";
$flag[3]["lang"] = "4";
$flag[4]["abbr"] = "es";
$flag[4]["name"] = "Español";
$flag[4]["status"] = "";
$flag[4]["lang"] = "3";
$flag[5]["abbr"] = "it";
$flag[5]["name"] = "Italiano";
$flag[5]["status"] = "";
$flag[5]["lang"] = "6";
$flag[6]["abbr"] = "tr";
$flag[6]["name"] = "Türkçe";
$flag[6]["status"] = "";
$flag[6]["lang"] = "5";

switch($lang){
    case '2':
        //englisch
        $flag[2]["status"] = "active";
        break;
    case '3':
        //spanish
        $flag[4]["status"] = "active";
        break;
    case '6':
        //-> italienisch
        $flag[5]["status"] = "active";
	break;
	case '4':
        //-> französisch
        $flag[3]["status"] = "active";
	break;
    case '5':
        //-> türkisch
        $flag[6]["status"] = "active";
	break;
	default:
        // deutsch
        $flag[1]["status"] = "active";
        break;
}

// use smarty template to output module
$tpl = cSmartyFrontend::getInstance();
$tpl->assign('flag', $flag);
$tpl->assign('idart', $idart);
$tpl->display('get.tpl');
?>
und get.tpl:

Code: Alles auswählen

<div id="nav_sprache">
	
    {foreach from=$flag item=thisflag}
	
        {if $thisflag.status == "active"}
		<img src="images/flag_{$thisflag.abbr}.png" alt="{$thisflag.name}" title="{$thisflag.name}">
        {else}
		<a href="front_content.php?idart={$idart}&changelang={$thisflag.lang}" class="additionalnavi"><img src="images/flag_{$thisflag.abbr}.png" alt="{$thisflag.name}" title="{$thisflag.name}"></a>
        {/if}

     {/foreach}

</div>

Re: Language-Switch - Flags

Verfasst: Mi 11. Dez 2013, 12:28
von rethus
Danke, werde es mal antesten