ユーザーがロゴの画像をアップロードできるようにする管理者設定ページを作成しようとしています。私はこのチュートリアルを使用しています:http ://www.webmaster-source.com/2010/01/08/using-the-wordpress-uploader-in-your-plugin-or-theme/
現在のベストプラクティスのように、印刷ではなくエンキューにスクリプトを追加するように変更しました。私のコードは次のとおりです。
function my_admin_scripts() {
wp_enqueue_script('media-upload');
wp_enqueue_script('thickbox');
wp_register_script('my-upload', get_stylesheet_directory_uri().'/bigg-options.js', array('jquery','media-upload','thickbox'));
wp_enqueue_script('my-upload');
}
function my_admin_styles() {
wp_enqueue_style('thickbox');
}
if (isset($_GET['page']) && $_GET['page'] == 'bigg_options') {
add_action('admin_enqueue_scripts', 'my_admin_scripts');
add_action('admin_enqueue_styles', 'my_admin_styles');
}
そしてJavascript:
jQuery(document).ready(function() {
jQuery('#upload_image_button').click(function() {
formfield = jQuery('#upload_image').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('#upload_image').val(imgurl);
tb_remove();
}
});
動作し、メディアアップロードウィンドウが開きます。ただし、通常のように画面中央のシックボックスポップアップではなく、ページの下部に表示され、左側に表示され、部分的に隠されています。これがどこに行くかのスクリーンショットです:
なぜこれを行っているのか、そしてそれを適切に配置する方法についてのアイデアはありますか?