Jump to content

[Résolu] Controller et outil de traduction


Recommended Posts

Bonjour tout le monde,

 

je suis confronté à un petit soucis.

 

Je suis entrain de créer une nouvelle page, et donc le controller qui va avec, jusque la aucun soucis.

 

Mon petit problème concerne la traduction de chaine de caractère.

 

Dans mon controller, en fonction de certains traitements, je construis un array multidimensionnel que je passe à smarty, mais dans ce array, j'ai quelque chaine de caratère que je voudrai rendre traduisible avec l'outil de traduction de prestashop.

 

Hors la methode $this->l() ,si pratique, disponible dans les modules ne l'est pas dans les controllers... Et je voudrai savoir si je passe à coté de quelque chose ou si vous avez une solution pour faire ça.

 

Exemple du array :

 

array(

'libelle1'=>valeur 1,

'libelle2'=>valeur 2,

'libelle3'=>valeur 3);

etc...

je voudrai pouvoir traduire avec l'outil de prestashop 'libelle 1', 'libelle 2', etc...

 

Merci d'avance,

Cordialement.

Edited by lymanss (see edit history)
Link to comment
Share on other sites

Bonjour,

 

j'ai juste un petit soucis de traduction que je vais régler en faisant des tests de valeurs dans le fichier tpl.

 

Quels sont tes problèmes avec les controleurs ? je peux peux être t'aider, j'ai pas trop de soucis avec le fonctionnement mise à part les traductions...

Link to comment
Share on other sites

J'aimerais créer une page à partir du sitemap existant pour faire un sitemap orienté utilisateur et design tout en laissant l'ancien tourné en footer. J'ai créer une page boutique.php un boutique.tpl et un boutiqueController.php avec le code contenu dans sitemap. mais page blanche.

Link to comment
Share on other sites

Bonjour lymass,

 

Normalement il ne devrait pas y avoir aucun soucis dans les controllers...

 

Dans quel version avez vous ce bug? (1.4 ou 1.5)

Pour la création d'une surcharge de controller ou un controller dans un module?

 

Cordialement,

Loic.

Link to comment
Share on other sites

Bonjour Loic,

 

je suis en version 1.4.8.2.

 

C'est un nouveau controller qui ne fait pas partie d'un module.

 

Donc dans mon controller, je voudrai faire quelque chose du style :

 

$array = ($this->l('monlibelle')=>ma valeur);

 

et j'ai le message d'erreur suivant : Fatal error: Call to undefined method moncontrollerController::l()

 

Cordialement.

Edited by lymanss (see edit history)
Link to comment
Share on other sites

Bonjour lymass,

 

Chez moi tous fonctionne corretcement.

 

Voici le test que j'ai fait :

Création d'un nouveau controller dans le back office :

Nom du fichier : AdminTotoController.php placé dans controller/admin/

Contenu du fichier :


class AdminTotoControllerCore extends AdminController
{
public function __construct()
{
 $test = array(
  $this->l('value1') => $this->l('result1'),
  $this->l('value2') => $this->l('result2')
 );
 foreach ($test as $key => $row)
  p($key.' => '.$row);
 parent::__construct();
}
}

et je n'ai aucune erreur...

 

Si c'est un nouveau controller dans le front office, la méthode l() n'existe effectivement pas.

 

Cordialement,

Loic.

Link to comment
Share on other sites

Bonjour Loic,

 

c'est effectivement un controller dans le frontoffice...

 

Je vais donc faire autrement.

 

je vais faire des if else dans le fichier tpl en fonction des valeurs

 

Merci de t'être penché sur mon problème.

 

Cordialement.

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...