ฉันกำลังเขียนปลั๊กอินที่กำหนดเองและฉันต้องการเพิ่มปุ่ม "เพิ่มสื่อ"
ฉันต้องการอัปโหลดสื่อไม่ใช่เพื่อดึงเนื้อหา / ข้อมูลใด ๆ จากไฟล์ที่อัปโหลด
ฉันจะเพิ่มปุ่มนี้ได้อย่างไร
ขอบคุณ
ฉันกำลังเขียนปลั๊กอินที่กำหนดเองและฉันต้องการเพิ่มปุ่ม "เพิ่มสื่อ"
ฉันต้องการอัปโหลดสื่อไม่ใช่เพื่อดึงเนื้อหา / ข้อมูลใด ๆ จากไฟล์ที่อัปโหลด
ฉันจะเพิ่มปุ่มนี้ได้อย่างไร
ขอบคุณ
คำตอบ:
หากคุณต้องการที่จะเพิ่มปุ่มสื่อเพิ่มที่คุณผู้ดูแลระบบแผง:
คุณต้องใช้ 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
}
ที่จะทำให้เห็นภาพขนาดย่อในส่วนท้ายของผู้ใช้แทนที่จะเป็นตัวเลข :)