我正在使用'shortcodes ultimate',您可以点击wordpress媒体上传器旁边的按钮。选择短代码后,会插入window.send_to_editor
。
这很棒,但我很难弄清楚如何编写它以便我可以将它用于多个自定义文本区域。
我将wordpress媒体上传器旁边的按钮添加到tiny-mce下面的每个文本区域(并不完全相关),实际上是一个打开thickbox的按钮,有很多选项和内容。每个文本区域上方都有一个按钮,我很可能需要修改代码,这是我想到的一个例子。
由于多个文本区域和按钮,我的代码正在调整(现在只是写了这个,不确定这是否是正确的方法)?
$('#generator-insert').each(function() {
$(this).live('click', function(event) {
//Lots of code here to build up the values, not needed for this example
var shortcode = jQuery('#generator-result').val();
//Perhaps an if statement using the class the click came from here so we know
//if we should send_to_editor or custom text-area, just not sure what to write
//to send to the text-area the click came from?
if ($(this).attr('class') == 'send_to_editor') {
window.send_to_editor(shortcode);
} else {
// Not quite sure what to write here to send to the text-area which the
// click came from, I should look up "window" and write something here.
// I just am a little lost and need some helpful insight...
}
});
});
这是原始版本
$('#generator-insert').live('click', function(event) {
//The generated value data here not needed for this question
var shortcode = jQuery('#generator-result').val();
// Insert into widget
if ( typeof window.generator_target !== 'undefined' ) {
jQuery('textarea#' + window.generator_target).val( jQuery('textarea#' + window.generator_target).val() + shortcode);
tb_remove();
}
// Insert into editor
else {
window.send_to_editor(shortcode);
}
// Prevent default action
event.preventDefault();
return false;
});
我在这里注意的一件事是window.generator_target
我觉得这就是你将它插入自定义区域的方式。不太确定,会喜欢一些帮助。
另外请注意,每个文本区域中的按钮都是原始html来打开thickbox ..打开wordpress uploader旁边的主要厚箱我使用add_action
并以这种方式插入..不要以为虽然有所作为..