2014-10-09 31 views
1

我已经创建了一个自定义徽标插件和它工作正常,但是当我试图将此功能添加到我离开主题选项它不工作。媒体上传插入后没有插入文本字段

我有这样的JS代码。

jQuery(document).ready(function() { 
jQuery('#upload_logo_button').click(function() { 
formfield = jQuery('#eo_theme_options[logo]').attr('name'); 
tb_show('', 'media-upload.php?type=image&TB_iframe=true'); 
return false; 
}); 
window.send_to_editor = function(html) { 
    imgurl = jQuery('img',html).attr('src'); 
    jQuery('#eo_theme_options[logo]').val(imgurl); 
    tb_remove(); 
} 
}); 

,这是HTML结构,

<div class="grid col-620 fit"> 
<input id="eo_theme_options[logo]" class="regular-text" type="text" name="eo_theme_options[logo]" value="" placeholder="Custom Theme Logo"> <input id="upload_logo_button" type="button" value="Upload Image" class="button-secondary"> 
<label class="description" for="eo_theme_options[logo]">Enter your logo URL here.</label></div> 

,这是PHP代码生成HTML,

protected function text($args) { 

    extract($args); 

    $value = (!empty($this->eo_options[$id])) ? ($this->eo_options[$id]) : ''; 
    $upload = (!empty($options)) ? '<input id="upload_logo_button" type="button" value="'.esc_attr($options).'" class="button-secondary"/>' : ''; 

    $html = '<input id="' . esc_attr('eo_theme_options[' . $id . ']') . '" class="regular-text" type="text" name="' . esc_attr('eo_theme_options[' . $id . ']') . '" value="'. esc_html($value) . '" 
    placeholder="' . esc_attr($placeholder) . '" /> '.$upload.' 
    <label class="description" for="' . esc_attr('eo_theme_options[' . $id . ']') . '">' . esc_html($description) . '</label>'; 

    return $html; 
} 

我的媒体上加载器工作正常,但它不是插入文本字段name=eo_theme_options[logo]

我什么都试过和每一件事情才刚刚在做工精细代替插入后应该张贴到这一点,

enter image description here

这样会不会是什么问题?

回答

1

这可能看起来很可笑,但是当我在过去做到了这一点,我必须确保返回我插入被链接到“媒体文件”所以实际上是将图像的路径图像。因此,点击“上传图片”,然后找到你想要的图片,确保它链接到“媒体文件”,然后“插入后”。

一种更好的方法,在我看来,是到了图像的ID存储在一个隐藏字段,并显示该标志的缩略图。如果您拥有图像的ID,则可以使用图像的路径进行更多操作。

UPDATE

删除括号,输入的ID标签内...

$html = '<input id="' . esc_attr('eo_theme_options[' . $id . ']') . '" 

$html = '<input id="' . esc_attr('eo_theme_options_' . $id) . '" 
+0

链接到媒体文件的图像,正常工作的有没有问题,我也上传一个文件,然后尝试插入后发布,但那是行不通的,也尝试插入已有的媒体文件,我已经上传,但sti没有工作。 可能有问题其他地方,我有根据,因为它应该是所有的设置,但是其没有工作,因为它应该是。 你只是给出一个意见,没有任何例子或错误或错误。 – hsn0331 2014-10-09 21:07:10

+0

非常感谢你,帮助了我。 :) 但我没有想到它可能是问题。因为它似乎不是一个问题,因为它仍然在我的插件中使用相同的过程方法'eo_options [id]'工作,但为什么它不在主题中工作,我不知道。 非常感谢。 :) – hsn0331 2014-10-09 23:45:46

+0

你也可以支持我的问题,如果你知道我的意思请:) – hsn0331 2014-10-09 23:46:34