Jump to content

feuilles de styles css pour chaques langues


Recommended Posts

bonjour,
comme c'est dit dans le titre, je veux créer un site avec 3 langues : arabe, français et anglais.
pour le français et l'anglais, il n'y a aucun problème.
pour les image, je fais l'astuce du {$lang_iso}.
mais pour la langue arabe, il faut que tout soit à l'opposé, puisque c'est du droite à gauche, donc je me suis dis, pourquoi ne pas faire une feuille de style spéciale pour la langue arabe et j'intègre le {$lang_iso} comme pour les images.
sinon, donner moi un autre astuce.
cordialement

Link to comment
Share on other sites

voilà c'est ce que je voulais savoir, est ce que c'est possible de le faire.
et dans ce cas, est ce que je laisse le global.css comme parent, et créer les changements de la langue arabe , français et anglais comme vous l'avez mentionné : main_{$lang_iso}.css.
où je vire le global.css, et je crée 3 nouvelle feuille de style pour chaque langue.
merci

Link to comment
Share on other sites

  • 2 months later...

Bonjour à tous,

J'aimerai aussi avoir un css par langue

header.php

<?php

// P3P Policies (http://www.w3.org/TR/2002/REC-P3P-20020416/#compact_policies)
header('P3P: CP="IDC DSP COR CURa ADMa OUR IND PHY ONL COM STA"');

require_once(dirname(__FILE__).'/init.php');

/* CSS */
$css_files[_THEME_CSS_DIR_.'global.css'] = 'all';

/* Hooks are volontary out the initialize array (need those variables already assigned) */
$smarty->assign(array(
   'HOOK_HEADER' => Module::hookExec('header'),
   'HOOK_LEFT_COLUMN' => Module::hookExec('leftColumn'),
   'HOOK_TOP' => Module::hookExec('top'),
   'static_token' => Tools::getToken(false),
   'token' => Tools::getToken(),
   'priceDisplayPrecision' => _PS_PRICE_DISPLAY_PRECISION_,
   'content_only' => intval(Tools::getValue('content_only'))
));

if(isset($css_files) AND !empty($css_files)) $smarty->assign('css_files', $css_files);
if(isset($js_files) AND !empty($js_files)) $smarty->assign('js_files', $js_files);

$smarty->display(_PS_THEME_DIR_.'header.tpl');

?>



Je pense qu'il faut modifier ceci
/* CSS */
$css_files[_THEME_CSS_DIR_.'{$lang_iso}.css'] = 'all';

Link to comment
Share on other sites

Cela ne fonctionne pas

$lang_iso doit retourner "1" pour anglais, "2" pour francais et "3" pour espagnol
J'ai fait une copie de mon global.css que j'ai renommé en 2.css

Si je met: $css_files[THEME_CSS_DIR.’{$lang_iso}.css’] = ‘all’;
Cela ne fonctionne pas

Si je met: $css_files[THEME_CSS_DIR.’2.css’] = ‘all’;
Ca marche

Savez-vous où est mon erreur ?

Link to comment
Share on other sites

Merci beaucoup pour ta réponse :)
Mais cela ne fonctionne pas

J'ai essayé de mettre ta modif dans header.php

$css_files[THEME_CSS_DIR.$cookie->id_lang.'.css'] = ‘all’;


et

$css_files[_THEME_CSS_DIR_.$cookie->id_lang.'.css'] = ‘all’;



Mais cela plante l'affichage de prestashop
Une idée ?

Link to comment
Share on other sites

  • 2 weeks later...

Voici une solution qui fonctionne bien:

Il suffit de remplacer

$css_files[_THEME_CSS_DIR_.'global.css'] = 'all';


par

if ($cookie->id_lang == 1) { $css_files[_THEME_CSS_DIR_.'1.css'] = 'all'; }
if ($cookie->id_lang == 2) { $css_files[_THEME_CSS_DIR_.'2.css'] = 'all'; }

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...