在(耐心地)等待新媒体上传器的正确文档和/或一些教程的同时,我仍在使用media_upload_tabs
筛选以向上载程序添加选项卡。这是我的(工作)代码:
<?php
add_filter( \'media_upload_tabs\', \'olab_add_media_tab\' );
function olab_add_media_tab( $tabs ) {
$tabs[\'bildarkiv\'] = __( \'Bildarkiv\', \'bildarkiv\' );
return $tabs;
}
add_action( \'media_upload_bildarkiv\', \'olab_tab_content\' );
function olab_tab_content() {
?>
<h1>WOOT!</h1>
<?php
}
add_action( \'print_media_templates\', \'obab_enqueue_admin_stuff\' );
function obab_enqueue_admin_stuff() {
wp_register_style( \'bak-css\', plugins_url( \'css/main.css\', __FILE__ ) );
wp_enqueue_style( \'bak-css\' );
wp_enqueue_script( \'bak-js\', plugins_url( \'js/app.js\', __FILE__ ), \'jquery\' );
}
这一切都是可行的,但选项卡的内容包含在一个iFrame中,这意味着我的排队脚本+样式完全不起任何作用!
我不介意iFrame,但我找不到将CSS/JS附加到<head>
iFrame的。渲染iFrame时,任何内联JS都会被剥离。
有人知道这件事吗?
最合适的回答,由SO网友:Eugene Manuilov 整理而成
你需要将你的风格和脚本在媒体上传挂钩中排队,然后分类wp_iframe
作用只要这样做,它就会起作用:
<?php
add_filter( \'media_upload_tabs\', \'olab_add_media_tab\' );
function olab_add_media_tab( $tabs ) {
$tabs[\'bildarkiv\'] = __( \'Bildarkiv\', \'bildarkiv\' );
return $tabs;
}
add_action( \'media_upload_bildarkiv\', \'olab_tab_iframe\' );
function olab_tab_iframe() {
wp_register_style( \'bak-css\', plugins_url( \'css/main.css\', __FILE__ ) );
wp_enqueue_style( \'bak-css\' );
wp_enqueue_script( \'bak-js\', plugins_url( \'js/app.js\', __FILE__ ), \'jquery\' );
wp_iframe( \'olab_tab_content\' );
}
function olab_tab_content() {
?>
<h1>WOOT!</h1>
<?php
}