Site vitrine multilangue

Par sylvain, il y a 12 ans


Bonjour,
Je voudrais faire un blog dans 2 ou 3 langues. Quels sont vos recommandations, pour les tables par exemples

10 réponses

Benjamin Derepas, il y a 12 ans

Tout dépend quel est le contenu de ton site ? blog, e-commerce, présentation, vitrine ... ?

sylvain, il y a 12 ans

Un site vitrine, en plusieurs langue et quelques articles ,faq

Vallyan, il y a 12 ans

Je vais prendre un pari et supposer que c'est pour un blog, comme tendent a le suggérer le titre du post ("Blog multilangue") ainsi que la phrase "Je voudrais faire un blog ...]" .. :p

Mais bon, ca reste une supposition ^^

Vallyan, il y a 12 ans

Et donc effectivement, c'est pas un blog -__-'

Avec Sylvain on peut s'attendre a tout :D :D

sylvain, il y a 12 ans

Merci je corrige le titre du sujet

Benjamin Derepas, il y a 12 ans

ici la doc t'explique comment mettre en place le module d'internalisation , mais je ne pense pas que cela règle ton problème .
Je te conseillerai pour ce qui est des articles/faq, de dubliquer le champs "contenu" dans ta bdd et d'ajouter contenu_en par exemple

sylvain, il y a 12 ans

Oui l'internationalisation c'est compris, actuellement, j'ai bien mes libellés qui sont traduit, mais je voudrais maintenant traduire aussi le contenu.

Benjamin Derepas, il y a 12 ans

Le contenu de tes pages fixes ? Et bien tu créer pour chaque vue deux exemplaire : mavue_fr et mavue_en
Ensuite, tu récupères la langue de l'utilisateur avec :

$lang = $this->Session->check('Config.language');

Et tu affiches la vue adéquate (je ne connais pas cake mais j'ai un peu feuilleter la doc à l'instant )

sylvain, il y a 12 ans

Merci @Benjamin en effet je check en session la langue.

Apres pour modeliser le truc,
J'ai TitreEN , DescriptionEN si la lang detecté est EN
J'aurais TitreFR, DescriptionFR si la langue detecté en FR

Je vais faire ca, si ca semble coherent

Content

  • titre_id

Articles

  • id
  • name
  • description
  • titre_id
  • lang

Si je veux traduire un article dans plusieurs langue,
je fait un select avec une jointure sur titre_id = 1