Lorsque vous insérez un objet flash dans la CKeditor la fenêtre de l'éditeur affichera ce symbole:CKeditor - Les balises personnalisées et des symboles à l'intérieur du editorwindow
Je me demandais. Est-il possible de faire quelque chose de similaire lorsque les utilisateurs insère cette balise dans l'éditeur (en utilisant regex {formbuilder = (\ d +)} /):
{formbuilder = 2}
Si oui, quelqu'un pourrait-il s'il vous plaît expliquer comment à? :)
MISE À JOUR:
J'ai regardé le plugin PageBreak pour essayer de comprendre ce que l'enfer se passe. La grande différence entre ce plugin et le mien est la façon dont le HTML est inséré dans l'éditeur.
CKEDITOR.plugins.add('formbuilder',
{
init: function(editor)
{
var pluginName = 'formbuilder';
var windowObjectReference = null;
editor.ui.addButton('Formbuilder',
{
label : editor.lang.common.form,
command: pluginName,
icon: 'http://' + top.location.host + '/publish/ckeditor/images/formbuilder.png',
click: function (editor)
{
if (windowObjectReference == null || windowObjectReference.closed){
var siteid = $('#siteid').val();
windowObjectReference = window.open('/publish/formbuilder/index.php?siteid='+siteid,'Formbuilder','scrollbars=0,width=974,height=650');
} else {
windowObjectReference.focus();
}
}
});
}
});
Comme vous pouvez le voir, mon plugin ouvre une nouvelle fenêtre et la balise est insérée avec:
function InsertForm(form_id)
{
// Get the editor instance that we want to interact with.
var oEditor = CKEDITOR.instances.page_content;
// Check the active editing mode.
if (oEditor.mode == 'wysiwyg')
{
// Insert the desired HTML.
oEditor.insertHtml('{formbuilder='+form_id+'}');
}
else
alert('You must be on WYSIWYG mode!');
}
Le plugin PageBreak fait tout lorsque vous cliquez sur l'icône de la barre d'outils. Cela permet de faire la fakeImage dans le fichier du plugin. Pour moi d'autre part, je ne vois pas comment cela est possible: \