Advertisement:

Author Topic: Un nom de domain par langue  (Read 899 times)

mecene

  • Newbie
  • *
  • Posts: 2
Un nom de domain par langue
« on: May 12, 2017, 07:56:45 pm »
Bonjour,
Je souhaiterais établir une installation de Osclass avec  Un nom de domain par langue.
Malheureusement j'ai quelques difficultés a mettre mon idee en place
Je suis parvenus a changer la langue lorsqu'un visiteur arrive par le domaine FR ou com,
j'ai également légèrement modifie le language switcher pour que les liens Href pointent vers le nom de domain associe a la langue mais la redirection ne s'effectue pas.


But :
domain.com -> en_US
domain.fr     -> fr_FR

Et que la selection de langue redirige vers le nom de domaine associe a la langue.


So far :


Deux noms de domaine (.com and .fr) pointent vers le serveur.
Mise en place du permalink natif a osclass(changement du fichier .htaccess)

Modifie "/oc-includes/osclass/helpers/hpreference.php" pour que le choix de langue en fonction du nom de domaine des visiteurs:
Code: [Select]
    function osc_language() { // language domain name
        if($_SERVER['HTTP_HOST'] == 'domain.fr'){
            return('fr_FR');
        }else{
            return(getPreference('language')); // default en_US if .com
        }
       
    }

Modifie "/oc-includes/osclass/helpers/hDefine.php" pour changer les liens href de la selection de langue
Code: [Select]
    function osc_change_language_url($locale) {

        $baseUrlEn = 'http://domain.com/';
        $baseUrlFr = 'http://domain.fr/';

        if ( osc_rewrite_enabled() ) {
                        switch ($locale) {
                case 'en_US':
                        return $baseUrlEn . osc_get_preference('rewrite_language') . '/' . $locale;
                    break;
             
                case 'fr_FR':
                        return $baseUrlFr . osc_get_preference('rewrite_language') . '/' . $locale;
                    break;
             
                default:
                        return osc_base_url() . osc_get_preference('rewrite_language') . '/' . $locale;
                    break;
            }
            //return osc_base_url() . osc_get_preference('rewrite_language') . '/' . $locale;
        } else {

            return osc_base_url(true) . '?page=language&locale=' . $locale;
        }
    }

Ce dernier code me donne les liens de bons Url sur le changeur de langue mais quand je clique, il ne se passe rien.
Quelqu'un pourrait-il m'aider a regler ce problème ou au moins me guider vers le bon chemin ou encore me faire savoir si je suis condamné à cette idée folle.

Cordialement