Intereting Posts
Автоматически добавлять надпись на изображении Пользовательский шаблон таксономии для нескольких пользовательских типов сообщений Константа для обновления «barebones» WordPress используя get_option для добавления другого js Добавление кода в сообщение под настраиваемым типом сообщения Вкладка jQuery UI не работает на странице плагина 301 перенаправление не работает через .htaccess Фильтр AJAX WHILE Loop не работает WordPress post-page: ссылка на родительскую страницу? Пользовательское действие комментариев Использование произвольного состояния сообщения без его регистрации Как изменить только часть функции через фильтр Ссылка на совместное использование Facebook не показывает эскиз изображений в сообщении? WooCommerce: не удается использовать wc_get_products для пользовательских конечных точек API REST почему не требуется require_once, работая с моими именами путей

Как вызвать диспетчер медиатеки WP3.5?

В прошлом окне Media Library можно было бы вызывать вот так:

tb_show("Upload image", "media-upload.php?type=image&TB_iframe=1&width=640&height=520"); 

Это все еще работает в WP3.5. Но мне интересно, как открыть нового медиа-менеджера? Thickbox больше не обрабатывается – tb_show() .

Спасибо за любые советы!

Из статьи Как использовать WordPress 3.5 Media Uploader в настройках темы (по codestag.com) , как показано в разделе Использование MediaPage 3.5 Media Uploader в плагинах (по mikejolley.com) . В статье Майка Джолли есть довольно интересные трюки.

Важное примечание : если страница, на которой будет использоваться загрузчик, еще не имеет всех API-интерфейсов мультимедиа, то необходимо wp_enqueue_media() .


Итак, предположим, что у нас есть такая кнопка в обычном мета-боксе:

 <div class="uploader"> <input type="text" name="settings[_wpse_82857]" id="_wpse_82857" /> <input class="button" name="_wpse_82857_button" id="_wpse_82857_button" value="Upload" /> </div> 

Следующий сценарий вызовет новый загрузчик и заполнит текстовое поле ввода #_wpse_82857 с помощью пути вложения, когда #_wpse_82857 Insert into post .

 jQuery(document).ready(function($) { var _custom_media = true, _orig_send_attachment = wp.media.editor.send.attachment; // ADJUST THIS to match the correct button $('.uploader .button').click(function(e) { var send_attachment_bkp = wp.media.editor.send.attachment; var button = $(this); var id = button.attr('id').replace('_button', ''); _custom_media = true; wp.media.editor.send.attachment = function(props, attachment) { if ( _custom_media ) { $("#"+id).val(attachment.url); } else { return _orig_send_attachment.apply( this, [props, attachment] ); }; } wp.media.editor.open(button); return false; }); $('.add_media').on('click', function() { _custom_media = false; }); });