from odoo import http class WebsiteLanguageController(http.Controller): @http.route('/', auth='public', website=True) def detect_language_and_redirect(self, **kwargs): # Vérifier si l'utilisateur est déjà sur une URL avec une langue current_url = http.request.httprequest.path if current_url.startswith(('/fr', '/en')): return http.request.render('website.homepage') # Remplacez par votre template d'accueil si nécessaire # Détection de la langue préférée à partir du navigateur browser_lang = http.request.httprequest.accept_languages.best_match(['fr', 'en']) # Si aucune langue détectée, utiliser la langue par défaut lang_code = browser_lang if browser_lang in ['fr', 'en'] else 'en' # Définir la langue active dans la session http.request.env['ir.http']._set_lang(lang_code) # Rediriger l'utilisateur vers la page d'accueil dans la langue correspondante return http.request.redirect('/%s' % lang_code)
Se rendre au contenu

Contactez-nous

Contactez-nous pour tout ce qui concerne notre entreprise ou nos services.
Nous ferons de notre mieux pour vous répondre dans les plus brefs délais.

Ma société
  • 3575 Fake Buena Vista Avenue
  • +1 555-555-5556
  • info@yourcompany.example.com
from odoo import http class WebsiteLanguageController(http.Controller): @http.route('/', auth='public', website=True) def detect_language_and_redirect(self, **kwargs): # Vérifier si l'utilisateur est déjà sur une URL avec une langue current_url = http.request.httprequest.path if current_url.startswith(('/fr', '/en')): return http.request.render('website.homepage') # Remplacez par votre template d'accueil si nécessaire # Détection de la langue préférée à partir du navigateur browser_lang = http.request.httprequest.accept_languages.best_match(['fr', 'en']) # Si aucune langue détectée, utiliser la langue par défaut lang_code = browser_lang if browser_lang in ['fr', 'en'] else 'en' # Définir la langue active dans la session http.request.env['ir.http']._set_lang(lang_code) # Rediriger l'utilisateur vers la page d'accueil dans la langue correspondante return http.request.redirect('/%s' % lang_code)