2010-07-28 9 views
4

Merci d'avance,Changement de langue dans Magento

Je suis nouveau sur Magento et j'ai besoin d'aide pour changer de langue pour les utilisateurs. Lorsqu'un client visite mon site Web, il doit utiliser son adresse IP pour déterminer son pays et changer la langue de manière appropriée. Par exemple, si je viens de France, mon site devrait s'afficher en français. Si les autres essaient de tout pays, le site devrait être dans cette langue locale du pays ..

-Jeet

Répondre

1

Je l'ai fait une fois pour un client. Voici ce que j'ai fait.

Pré-requis: bibliothèque GeoIp pour PHP.

1- Créez des vues de magasin relatives aux langues de votre administrateur Magento.

2- Ajouter un système de filtrage en faisant:

2a - Modifiez le fichier de mise en page de page.xml de votre thème principal/parent et, autour de la ligne 35/36 (dans la poignée, ajouter:

<block type="page/html" name="country-filter" output="toHtml" template="page/html/country-filter.phtml" /> 

2b - Créer un modèle/page/html/pays filter.phtml dans votre thème principal/parent et de mettre ce code qui peut être modifié en fonction de vos besoins:

if(!isset($_COOKIE['frontend'])) { 
setcookie("frontend",session_id(),time()+60*60*24,"/",""); 
$ip = $_SERVER['REMOTE_ADDR']; 
$country = geoip_country_name_by_name($ip); 

switch($country) { 

    case 'France': 
    $url = $this->getUrl() . '?___store=YOUR_STORE_VIEW_CODE_FOR_FRANCE'; 
    header('Location:' . $url) ; 
    /* (Maybe add "exit;" here)*/ 
    break; 

    // (etc... for other cases) 

    default: 
    break; /* No need to specify a country/store view for default as you must have done that in System > Manage Stores in your Magento backend.*/ 
} 
} 
+0

Merci buddy est vraiment utile .. .. – Jitendra

Questions connexes