Jump to content

[Résolu] Charger l'éditeur TinyMCE sur un nouveau champ textarea


Recommended Posts

Bonjour à tous,

 

je suis actuellement devant une problèmatique, qui est, j'en suis quasiment certain, pas très compliquée : il s'agit d'intégrer l'éditeur riche TinyMCE à un nouveau champ de type textarea que j'ai précédement créé dans le BO.

 

Chose déjà faite : intégration des scripts JS via le renderForm() =>

 

// autoload rich text editor (tiny mce)
	$this->tpl_form_vars['tinymce'] = true;
	$iso = $this->context->language->iso_code;
	$this->tpl_form_vars['iso'] = file_exists(_PS_ROOT_DIR_.'/js/tiny_mce/langs/'.$iso.'.js') ? $iso : 'en';
	$this->tpl_form_vars['ad'] = dirname($_SERVER['PHP_SELF']);

[...]
'tinymce' => true,
[...]

[...]
'class' => 'autoload_rte',
[...]

 

Mais ensuite, pas trouvé comment assigner l'éditeur à mon textarea...

 

Si quelqu'un à une idée, je suis preneur ;)

 

Merci !

Link to comment
Share on other sites

  • 3 weeks later...

Bonjour,

 

De mémoire (c'est vieux), c'était le autoload rte qui était au mavais endroit.

Le mieux, c'est de s'inspirer des autres contrôleurs BO où il y a ces fameux champs.

Le problème c'est que ça ne fonctionne pas dans le module "Éditeur de page d'accueil" par exemple

Link to comment
Share on other sites

  • 4 months later...

Bonjour,

 

Sur la 1.5 le module editorial prend en compte la nouvelle adaptation par la classe "HelperForm" (aide à la création de formulaire) pour générer sous condition de configuration de nouveau formulaire, incluant les champs richtext tiny_mce.

 

Pour les modules 1.4 qui n'ont pas prévu ce changement, vous pouvez rapidement réutiliser votre ancien code en pointant l'ancien :

$isoTinyMCE = (file_exists(_PS_ROOT_DIR_.'/js/tiny_mce/langs/'.$iso.'.js') ? $iso : 'en');

vers le nouveau :

$isoTinyMCE = (file_exists(_PS_ROOT_DIR_.'/js/tinymce/jscripts/tiny_mce/langs/'.$iso.'.js') ? $iso : 'en');

 

Mais cela ne suffit pas, il faut aussi réintégrer l'ancienne configuration dans vos modules. Copiez le fichier ./js/tinymce.inc.js (depuis la dernière version 1.4) vers ./modules/[votre_module]/js/tinymce.inc.js .

Vous devez ensuite l'appeler en modifiant :

<script type="text/javascript" src="'.__PS_BASE_URI__.'js/tinymce.inc.js"></script>';

par

<script type="text/javascript" src="'.__PS_BASE_URI__.'modules/[votre_module]/js/tinymce.inc.js"></script>';

 

Et voilou, vos tinymce sont à nouveau compatibles pour la 1.5.

 

Mais il faut je pense le prendre comme une transition, afin de profiter des nouvelles fonctionnalités 1.5 .

En tout cas ça va sûrement vous dépanner.

 

A+

Link to comment
Share on other sites

  • 1 month later...

Bonjour

 

J'ai un problème avec l'éditeur tinymce sur la version 1.5.

Tout mes texctarea des modules dans le Back Office s'affichent sans l'editeur.

j'ai l'erreur suivante :

ReferenceError: tinyMCE is not defined

tinyMCE.init({

 

J'utilise la version 2.0 du module navmegadrownevo.

 

$this->_html .='
  <script type="text/javascript">id_language = Number('.$defaultLanguage.');</script>
  <script type="text/javascript" src="'.$this->_path.'views/js/jquery-sortable.js"></script>
  <script type="text/javascript" src="'.__PS_BASE_URI__.'js/tinymce/jscripts/tiny_mce/tiny_mce.js"></script>

  <script type="text/javascript">
 tinyMCE.init({
  mode : "textareas",
  theme : "advanced",
  plugins : "safari,pagebreak,style,layer,table,advimage,advlink,inlinepopups,media,searchreplace,contextmenu,paste,directionality,fullscreen",
  // Theme options
  theme_advanced_buttons1 : "newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
  theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,,|,forecolor,backcolor",
  theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,media,|,ltr,rtl,|,fullscreen",
  theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,pagebreak",
  theme_advanced_toolbar_location : "top",
  theme_advanced_toolbar_align : "left",
  theme_advanced_statusbar_location : "bottom",
  theme_advanced_resizing : false,
  content_css : "'.__PS_BASE_URI__.'themes/'._THEME_NAME_.'/css/global.css",
  document_base_url : "'.__PS_BASE_URI__.'",
  width: "600",
  height: "auto",
  font_size_style_values : "8pt, 10pt, 12pt, 14pt, 18pt, 24pt, 36pt",
  // Drop lists for link/image/media/template dialogs
  template_external_list_url : "lists/template_list.js",
  external_link_list_url : "lists/link_list.js",
  external_image_list_url : "lists/image_list.js",
  media_external_list_url : "lists/media_list.js",
  elements : "nourlconvert",
  convert_urls : false,
  language : "'.(file_exists(_PS_ROOT_DIR_.'/js/tinymce/jscripts/tiny_mce/langs/'.$iso.'.js') ? $iso : 'en').'"

 });
  //tinyMCEInit(\'textarea.rte\');

 

dans le module ya bien les meme paramètres que tu spécifie ci dessus.

 

Par contre le dossier jscripts n'existe pas dans la racine du root/js/tinymce

Est ce que quelqu'un peux me dire d'ou ca vient ??

 

Merci

Wicem

Link to comment
Share on other sites

  • 6 months later...
  • 2 years later...

Bonjour mon éditeur de texte tinymce a  disparu partout je n'ai plus que une boite code html à la place j'ai la dernière version de presta la 1.6.1.2 mais ca le fessai sur la précédente de plus mon responsive ne marche plus également toutes mes photos sur l'index sont regroupe et la barre de menu disparaît en responsive , une solution ?

post-1117299-0-70571700-1446140401_thumb.jpg

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