Jump to content

[Résolu] Back-office - Créer un champs WYSIWYG dans "Produit"


Recommended Posts

Bonjour,

 

Je rencontre un petit soucis lors de la création d'un nouveau champs de type Textarea dans le back-office des produits.

 

En effet, je souhaite mettre en place dans l'onglet "Caractéristique" de la rubrique "Produit", un champs supplémentaire de type Textarea avec l'éditeur TinyMCE.

 

Le soucis que je rencontre pour le moment est que j'arrive à afficher mon champs texte mais l'éditeur ne veut pas se charger.

 

Ci-dessous le code que j'ai c/c du template informations.tpl pour l'ajouter dans features.tpl

 

{include file="controllers/products/textarea_lang.tpl"  languages=$languages
input_name='features_description'
input_value=$features_description}

 

Ce bout de code fonctionne si je l'ajoute dans le template "informations.tpl" mais dans "features.tpl" je n'ai pas l'éditeur.

 

A mon avis, j'ai dû oublié quelques informations lors de l'assignation de mes variables mais je n'arrive pas à trouver l'élément bloquant.

 

Ci-dessous, les bouts de codes ajouté dans la fonction initFormFeatures() du controller AdminProductsController.

 

$iso_tiny_mce = $this->context->language->iso_code;
$iso_tiny_mce = (file_exists(_PS_JS_DIR_.'tiny_mce/langs/'.$iso_tiny_mce.'.js') ? $iso_tiny_mce : 'en');

$features_description = "MA DESCRIPTION ";
$data->assign('features_description',$features_description);

$data->assign('ad',dirname( $_SERVER['PHP_SELF'] ));
$data->assign('iso_tiny_mce',$iso_tiny_mce);

 

 

Merci,

Sin_

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

J'ai rien compris... C'est possible d'être un peu plus claire ?

 

Déjà la version de Prestashop que tu utilises ? l'emplacement ou tu trouves les .tpl (Il est monnaie courante de mettre au moins le chemin absolue à partir de la racine) ? etc... Enfin bref des détails.

Link to comment
Share on other sites

Je tourne actuellement sur Prestashop 1.5.4.

 

Comme indiqué dans le titre de mon post, il s'agit d'un champs supplémentaire que je souhaite créer dans le back-office de Produits ( Produits >> MonProduit >> Onglet Caractéristique).

 

Pour cela, j'ai modifié le fichier TPL 'features.tpl' de products dans le thème admin

/admin/themes/default/template/controllers/products/features.tpl
et ajouté le bout de code suivant :

 

{include file="controllers/products/textarea_lang.tpl"  languages=$languages
input_name='features_description'
input_value=$features_description}

 

Code c/c du template 'informations.tpl' se trouvant dans le même dossier que 'features.tpl'.

 

Ensuite, j'ai modifié le controller AdminProductsController dans

/controllers/admin/AdminProductsController.php
(Oui, je n'ai pas utilisé l'override pour le moment, juste le temps de tester), j'ai ajouté le code suivant dans la fonction initFormFeatures() :

 

$iso_tiny_mce = $this->context->language->iso_code;
$iso_tiny_mce = (file_exists(_PS_JS_DIR_.'tiny_mce/langs/'.$iso_tiny_mce.'.js') ? $iso_tiny_mce : 'en');
$features_description = "MA DESCRIPTION ";
$data->assign('features_description',$features_description);
$data->assign('ad',dirname( $_SERVER['PHP_SELF'] ));
$data->assign('iso_tiny_mce',$iso_tiny_mce);

 

 

Suite à ces modifications, mon champs "textarea" s'affiche dans l'onglet "Caractéristiques" mais l'éditeur WYSIWYG n'est pas chargé.

 

Questions :

 

Quelle est l'élément que j'ai oublié d'ajouter dans ma fonction initFormFeatures() pour que le TinyMCE puisse se charger ?

 

Merci,

Sin_

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