Я пишу пользовательский плагин, и я хотел бы добавить кнопку «Добавить медиа».
Мне просто нужно загружать медиа, а не извлекать контент / данные из загруженного файла.
Как я могу добавить эту кнопку?
Спасибо
Если вы хотите добавить кнопку добавления мультимедиа в свои админ- панели:
Вам нужно использовать wp_enqueue_media ();
add_action ( 'admin_enqueue_scripts', function () {
if (is_admin ())
wp_enqueue_media ();
} );
Тогда используйте этот js:
jQuery(document).ready(function() {
var $ = jQuery;
if ($('.set_custom_images').length > 0) {
if ( typeof wp !== 'undefined' && wp.media && wp.media.editor) {
$('.set_custom_images').on('click', function(e) {
e.preventDefault();
var button = $(this);
var id = button.prev();
wp.media.editor.send.attachment = function(props, attachment) {
id.val(attachment.id);
};
wp.media.editor.open(button);
return false;
});
}
}
});
Используйте этот HTML:
<p>
<input type="number" value="" class="regular-text process_custom_images" id="process_custom_images" name="" max="" min="1" step="1">
<button class="set_custom_images button">Set Image ID</button>
</p>
is_admin()
когда вы используете крючокadmin_enqueue_scripts
. Кроме того, я бы проверил, если вы находитесь на правильной странице сget_current_screen()
.var attachmentURL = wp.media.attachment(attachment.id).get("url");
. Я положил это внутрьfunction(props, attachment)
Показать предварительный просмотр вместо номера
Просто как твик, я сделал это ...
изменил введенный номер на скрытый.
добавлено:
А потом ... над скрытым полем.
Это сделает миниатюру видимой в конце пользователя вместо числа :)
источник