Wordpress tinyMCE窗口管理器上传按钮没有将url添加到文本字段

时间:2015-09-21 23:09:35

标签: wordpress tinymce wysiwyg

我在WYSIWYG上添加了一个按钮,打开一个带有要填写的字段的弹出窗口。对于这些字段,我试图添加另一个按钮,从媒体库中选择一个文件并在文本字段中插入链接/ URL 。我按钮工作,它打开媒体库,但是当我选择一个文件时,没有任何内容插入文本字段。

如果我在媒体选择后为json.url添加警报,它会提醒我文件链接,所以我知道它从文件中获取了url。但是,我无法将其纳入文本字段。

以下是我的editor_plugin.js文件中的代码:

{
    type: 'textbox',
    name: 'myfile',
    label: 'My File',
    id: 'my-file',
    value: ''
},{
    type: 'button',
    name: 'select-file',
    text: 'Upload File',
    onclick: function() {
        window.mb = window.mb || {};

        window.mb.frame = wp.media({
            frame: 'post',
            state: 'insert',
            library : {
                type : 'image'
            },
            multiple: false
        });

        window.mb.frame.on('select', function() {
            var json = window.mb.frame.state().get('selection').first().toJSON();
            alert(json.url);
            if (0 > $.trim(json.url.length)) {
                return;
            }

            $('#my-file').val(json.url);
        });

        window.mb.frame.open();
    }
}

1 个答案:

答案 0 :(得分:2)

解决了它!!

我删除了“框架”&来自wp.media的“state”并将“$”更改为“jQuery”

window.mb.frame = wp.media({

            library : {
                type : 'image'
            },
            multiple: false
        });

        window.mb.frame.on('select', function() {
            var json = window.mb.frame.state().get('selection').first().toJSON();

            if (0 > $.trim(json.url.length)) {
                return;
            }

            jQuery('#my-file').val(json.url);
        });