Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Wordpress - Insert html / text in the editor

I am making a Vimeo Upload plugin for Wordpress, so that you can upload directly from wordpress onto Vimeo and embed it directly. Anyways i think i have the hardest part done and that was the authentication (bad examples where there).

Now I have another problem. In Wordpress you can embed images in the rich text editor through pressing on a button in the popup. ( http://cl.ly/6Xns ) ('Invoegen in bericht' button in dutch).

Now I want to do the same thing, insert 'some tekst' (a url is enough) into the rich text area when someone clicks on my 'invoegen' button ( http://cl.ly/6Wmn ) how can I achieve this?

I can't find any javascript documentation on the Wordpress site. Hoping someone can help. I thought, lets look how the other button does it, but the inspector does not show any 'onclicks' and such on that button. Those are hooked on the fly and I don't know where in the code to look for that.

Hoping someone can help me out.

Kind regards.

like image 215
Matthijn Avatar asked May 05 '11 22:05

Matthijn


2 Answers

Fixed it myself.

function appendText(text) {
//Insert content
parent.tinyMCE.activeEditor.setContent(parent.tinyMCE.activeEditor.getContent() + text);
//Close window
parent.jQuery("#TB_closeWindowButton").click();
}
like image 72
Matthijn Avatar answered Sep 28 '22 03:09

Matthijn


For those of you who want to add the text at the current cursor location, you can make use of the mceInsertContent function (built-in TinyMCE function).

A quick example would be:

function addTextIntoEditor(myText){
    tinymce.activeEditor.execCommand('mceInsertContent', false, myText);
}

This is based on Magus's answer located here

like image 44
Frits Avatar answered Sep 28 '22 02:09

Frits