Navigation_Meta - Sprachversion

Gesperrt
Fips
Beiträge: 105
Registriert: Fr 20. Feb 2009, 09:55
Kontaktdaten:

Navigation_Meta - Sprachversion

Beitrag von Fips »

Hallo,
ich wollte eine Sprache EN einrichten. Ich setzte die 4.8.13 mit dem Modul Navigation_Meta ein. Leider git es dort keine Möglickkeit des Switchen der Sprachen eingebaut. Ich kann zwar eine neue Kategorie definieren und diese auf EN verlinken. Das funktioniert. Ich möchte aber, dass die direkt angezeigte Seite, beim Switchen auch in der ausgewählten Sprache angezeigt wird.
Hat jemand dies jemand schon angepasst?

Mit besten Grüßen

Fips
Fips
Beiträge: 105
Registriert: Fr 20. Feb 2009, 09:55
Kontaktdaten:

Re: Navigation_Meta - Sprachversion

Beitrag von Fips »

Hallo,
ich habe das Modul so angepasst, dass man zwichen EN und DE seitengerecht switchen kann.

Code: Alles auswählen

<?php
/**
* $RCSfile$
*
* Description: Meta Navigation on bottom of page
*
* @version 1.0.0
* @author Rudi Bieller
* @copyright four for business AG <www.4fb.de>
*
* {@internal
* created 2008-04-07
* }}
*
* $Id$
*/

// include Contenido_FrontendNavigation class
cInclude('classes', 'Contenido_FrontendNavigation/Contenido_FrontendNavigation.class.php');

// get start idcat
$iIdcatStart = getEffectiveSetting('navigation', 'idcat-meta', 2);

//check if there is a template instance
if (!isset($tpl) || !is_object($tpl)) {
    $tpl = new Template();
}

// reset template object
$tpl->reset();

// build navigation
try {
    $oFeNav = new Contenido_FrontendNavigation($db, $cfg, $client, $lang, $cfgClient);
    $oContenidoCategories = $oFeNav->getSubCategories($iIdcatStart, true);
    if ($oContenidoCategories->count() > 0) {
        foreach ($oContenidoCategories as $oContenidoCategory) {
            // this is just for sample client - modify to your needs!
            if ($cfg['url_builder']['name'] == 'front_content' || $cfg['url_builder']['name'] == 'MR') {
                $aParams = array('lang' => $lang, 'idcat' => $oContenidoCategory->getIdCat());
            } else {
                $aParams = array('a' => $oContenidoCategory->getIdCat(), 
                                'idcat' => $oContenidoCategory->getIdCat(), // needed to build category path
                                'lang' => $lang, // needed to build category path
                                'level' => 0); // needed to build category path
            }
            try {
                $tpl->set('d', 'url', Contenido_Url::getInstance()->build($aParams));
            } catch (InvalidArgumentException $e) {
                $tpl->set('d', 'url', 'front_content.php?idcat='.$oContenidoCategory->getIdCat());
            }
            $tpl->set('d', 'title', $oContenidoCategory->getCategoryLanguage()->getName());
            $tpl->set('d', 'label', $oContenidoCategory->getCategoryLanguage()->getName());
            $tpl->next();
        }
        $sItems = $tpl->generate('templates/navigation_meta_item.html', true, false);
        $tpl->reset();
        $tpl->set('s', 'items', $sItems);
        $tpl->generate('templates/navigation_meta_container.html');
    }
} catch (Exception $e) {
    echo 'Shit happens: ' . $e->getMessage() . ': ' . $e->getFile() . ' at line '.$e->getLine() . ' ('.$e->getTraceAsString().')';
}
switch($lang){
	case '2':
		//englisch -> deutsch
		echo '<div class="switch"><a href="'.$sess->url('front_content.php?idart='.$idart.'&changelang=1').'" class="metaNavi">'.mi18n("GERMAN").'</a></div>';
		break;
	default:
		//deutsch -> englisch
		echo '<div class="switch"><a href="'.$sess->url('front_content.php?idart='.$idart.'&changelang=2').'" class="metaNavi">'.mi18n("ENGLISH").'</a></div>';
		break;
}

?>
Fips
Gesperrt