J'ai installé TinyMCE, tout fonctionnait très bien. J'ai ensuite utilisé Google Closure pour empaqueter le JavaScript de mon site avec TinyMCE_src
Le problème que j'ai, c'est que TinyMCE appelle maintenant:
plugins/paste/editor_plugin.js
themes/advanced/editor_template.js
langs/en.js
Et que les chemins qui sont utilisés ne sont pas valides, ils sont 404
Comment puis-je dire à TinyMCE où aller pour obtenir ces fichiers?
J'ai essayé:
relative_urls : false,
document_base_url : "http://www.site.com/path1/",
Mais ils n'ont aucun effet sur les fichiers ci-dessus.
Conseiller? Merci
J'ai eu le même problème, et il aurait pu être résolu facilement si nous avions pu spécifier base url en utilisant document_base_url.
Alternativement, j'ai pu spécifier l'URL de base avant d'initialiser tinymce.
tinyMCE.baseURL = "URL_TO/tinymce/jscripts/tiny_mce/";// trailing slash important
tinyMCE.init({
mode : "textareas",
theme : "simple"
});
TinyMCE fonctionne bien maintenant.
Selon ceci: http://www.tinymce.com/wiki.php/Configuration:theme_url
tinymce.init({
...
theme_url: (document.location.pathname + '/js/tinymce/themes/modern/theme.js').replace("\/\/", "\/"),
skin_url: (document.location.pathname + '/js/tinymce/skins/lightgray/').replace("\/\/", "\/"),
...
Mais, il faut faire attention aux chemins. Avec de l'aide document.location.pathname
J'ai le répertoire racine du projet. Remplacer la fonction nécessaire pour remplacer la double barre oblique par une barre oblique simple, car un serveur différent peut retourner "... // serveur/site" OR "... // serveur/site /" et il peut be: "... // serveur/site/js ..." OR "... // serveur/site // js ...".
Vous pouvez remplacer l'URL de base de tinyMCE en plaçant le code suivant avant d'initialiser tinyMCE.
var tinyMCEPreInit = {
suffix: '',
base: '/tinymce/',
query: ''
};
Ceci est utile si vous avez déjà chargé tinyMCE à partir d'une source fusionnée et que le chemin de base n'est pas trouvé correctement.
Si vous utilisez le plugin TinyMCE jQuery, vous pouvez tout charger à partir d'un emplacement distant, ajoutez simplement le script_url
paramètre dans votre code init. Il chargera tout à partir de là, y compris les scripts/images/etc.
$('textarea').tinymce({
script_url: 'http://tinymce.moxiecode.com/js/tinymce/jscripts/tiny_mce/tiny_mce.js'
});
Découvrez ce violon, il inclut le tout à distance depuis le site Web de TinyMCE: http://jsfiddle.net/xgPzS/22/
Selon la documentation de TinyMCE 4.x, vous pouvez spécifier l'URL de base du document lors de l'initialisation.
tinymce.init({
document_base_url: "http://www.example.com/path1/"
});
si vous utilisez CodeIgniter, utilisez simplement base_url()
tinymce.init({
document_base_url: "<?php echo base_url() ?>"
});
Rappelez-vous: relative_url
Doit être vrai pour fonctionner parfaitement, sinon vous obtiendrez des URL absolues.
Pour plus de détails: http://www.tinymce.com/wiki.php/Configuration:document_base_url
Bundle tout en utilisant grunt (instructions sur github ) alors il vous suffira de configurer d'où charger tous les css en utilisant l'option skin_url
tinymce.init({skin_url: window.location.Origin + '/css/tinymce'})