답변:
관리자 패널에 미디어 추가 버튼을 추가하려는 경우 :
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)
숫자 대신 섬네일 미리보기 표시
조정처럼, 나는 이것을했다 ...
숫자 입력을 숨김으로 변경했습니다.
추가 :
$imgid =(isset( $instance[ 'imgid' ] )) ? $instance[ 'imgid' ] : "";
$img = wp_get_attachment_image_src($imgid, 'thumbnail');
그리고 ... 숨겨진 필드 위.
if($img != "") {
?>
<img src="<?= $img[0]; ?>" width="80px" /><br />
<?php
}
그러면 숫자 대신 사용자쪽에 축소판이 표시됩니다. :)