Intereting Posts
Динамически изменяющийся логотип на функции прокрутки выбор нескольких таксономий отображает только один в интерфейсе $ wpdb error (вызов функции-члена-члена () для не-объекта) загрузить ajax с помощью admin-ajax.php Комментарии WordPress – разделитель "/" не найден Как настроить пользовательские файлы cookie перед выходом Отображение результатов поиска (сделанных сторонним поисковым провайдером) внутри статьи Проблема с указаниями и абсолютными ссылками Какой плагин позволит мне перенаправить 404 ошибки на определенную страницу? Получить только изображение профиля профиля изображения URL-адрес внутри цикла Использование ReactJS в администраторе WordPress для разработки плагинов Тема Splash Image в панели управления «Внешний вид -> Темы» Различия между разработкой пользовательских тем для wordpress.com и wordpress.org? Удалить все запросы Arg Импортировать шаблон заголовка из другой темы

Как отправить данные между wp_iframe и backbone.js в загрузке мультимедиа

Вкратце:
На странице / странице edit.php я хочу иметь возможность

  1. нажмите « Добавить медиа» и откройте загружаемый по умолчанию медиа-загрузчик
  2. вместо Create Gallery в левом меню есть пользовательская вкладка.
  3. на этой пользовательской вкладке пользователь может выбрать / выбрать пользовательские материалы (например: пользовательские настройки).
  4. пользователь нажимает кнопку (например, « Создать новую галерею» ), а короткий код вставляется в редактор

необязательный:

  1. впоследствии можно изменить код короткого замыкания (например, галерею редактирования )

Что я до сих пор:
Я могу создать пользовательскую вкладку в медиа-загрузчике по умолчанию и отобразить содержимое.
Как расширить медиабиблиотеку (WP 4.4)
https://codex.wordpress.org/Function_Reference/wp_iframe

// add the tab add_filter('media_upload_tabs', 'my_upload_tab'); function my_upload_tab($tabs) { $tabs['mytabname'] = "My Tab Name"; return $tabs; } // call the new tab with wp_iframe add_action('media_upload_mytabname', 'add_my_new_form'); function add_my_new_form() { /* call custom scripts and styles wp_enqueue_script(); */ wp_iframe( 'my_new_form' ); } // the tab content function my_new_form() { /* load all relevant functions */ wp_enqueue_media(); echo '<p>Example HTML content goes here.</p>'; } 

Я также знаю, что я могу расширить wp.media.View через backbone.js.
Но я только начинаю изучать / понимать позвоночник.

Я также знаю, что вы можете открыть чистый медиабиблиотечный фрейм и получить выбранный идентификатор изображения или URL-адрес или любую другую информацию, предоставленную вложением через jquery:
https://rudrastyh.com/wordpress/customizable-media-uploader.html

 var custom_uploader = wp.media({ title: 'Insert image', library : { // uncomment the next line if you want to attach image to the current post // uploadedTo : wp.media.view.settings.post.id, type : 'image' }, button: { text: 'Use this image' // button label text }, multiple: false // for multiple image selection set to true }).on('select', function() { // it also has "open" and "close" events var attachment = custom_uploader.state().get('selection').first().toJSON(); $(button).removeClass('button').html('<img class="true_pre_image" src="' + attachment.url + '" style="max-width:95%;display:block;" />').next().val(attachment.id).next().show(); /* if you sen multiple to true, here is some code for getting the image IDs var attachments = frame.state().get('selection'), attachment_ids = new Array(), i = 0; attachments.each(function(attachment) { attachment_ids[i] = attachment['id']; console.log( attachment ); i++; }); */ }) .open(); 

Но когда я использую этот второй подход, я ограничусь всеми типами вложений, и я не могу вставить короткий код в редактор.
Поэтому я решил, что первый метод приблизит меня к моей цели.

Если у кого-то есть лучший подход, пожалуйста, дайте мне знать.

Если этого не происходит, остальные вопросы:

  1. Как я могу представить пользовательские данные (например, с помощью опции) в Backbone.View?
    мне нужно локализовать скрипт для достижения этого или это как-то сделано с использованием сценария шаблона?

  2. Как я могу создать кнопку (или функцию, если быть точным), которая закрывает iframe upload и вставляет все, что я хочу в редактор?
    Я знаю, что media_send_to_editor($html) каким-то образом задействован, но я не знаю, как это сделать.

Итак, есть ли какие-либо предложения или могут указать мне в правильном направлении?

Solutions Collecting From Web of "Как отправить данные между wp_iframe и backbone.js в загрузке мультимедиа"