اضافه کردن دکمه آپلود رسانه در وردپرس با کدنویسی
شاید شما هم بخواهید برای افزودن دکمه آپلود در وردپرس از کدنویسی استفاده کنید در این مقاله از سایت کیت وردپرس قصد داریم این موضوع رو به صورت کامل آموزش دهیم.
خلاصه این مطلب:
Toggleفراخوانی اسکریپتهای رسانه در وردپرس:
اطمینان حاصل کنید که اسکریپتهای لازم برای آپلود کننده رسانه در فایل افزونهی خود فراخوانی شده باشند. میتوانید این کار را با افزودن کد زیر به فایل افزونه یا فایل اصلی PHP افزونهی خود انجام دهی
function enqueue_media_uploader_scripts() {
if (is_admin()) {
wp_enqueue_media();
}
}
add_action('admin_enqueue_scripts', 'enqueue_media_uploader_scripts');
ایجاد فیلد ورودی برای URL رسانه:
شما به یک فیلد ورودی نیاز دارید که کاربران بتوانند URL رسانه یا تصویر را وارد کنند. میتوانید یک فیلد ورودی در تنظیمات افزونه یا هرجایی که نیاز دارید، ایجاد کنید.
<input type="text" id="media_url" name="media_url" value="<?php echo esc_attr($media_url); ?>" />
افزودن دکمهی آپلود کننده رسانه:
زیر فیلد ورودی، یک دکمه اضافه کنید که آپلود کننده رسانه وردپرس را باز کند.
<button id="upload_media_button" class="button">رسانه آپلود کنید</button>
جاوااسکریپت برای مدیریت آپلود کننده رسانه:
کد جاوا اسکریپت را اضافه کنید تا عملکرد آپلود کننده رسانه را مدیریت کند. این کد هنگام کلیک بر روی دکمه، آپلود کننده رسانه وردپرس را باز میکند.
jQuery(document).ready(function ($) {
// تمام متغیرها را برای استفاده در دامنه تنظیم کنید
var frame;
var mediaUrlInput = $('#media_url');
// هنگامی که بر روی دکمهی تصویر کلیک میشود...
$('#upload_media_button').click(function (e) {
e.preventDefault();
// اگر فریم رسانه از قبل وجود داشته باشد، بازش کنید.
if (frame) {
frame.open();
return;
}
// یک فریم رسانه جدید ایجاد کنید
frame = wp.media({
title: 'انتخاب یا آپلود رسانه',
button: {
text: 'استفاده از این رسانه'
},
multiple: false // تنظیم شود تا انتخاب چندین فایل رسانه امکانپذیر باشد
});
// هنگامی که یک تصویر در فریم رسانه انتخاب میشود...
frame.on('select', function () {
// جزئیات پیوست را از حالت فریم دریافت کنید
var attachment = frame.state().get('selection').first().toJSON();
// مقدار URL رسانه را در فیلد ورودی تنظیم کنید
mediaUrlInput.val(attachment.url);
});
// در نهایت، فریم رسانه را باز کنید
frame.open();
});
});
از wp_enqueue_script
در فایل PHP خود برای فراخوانی این اسکریپت اطمینان حاصل کنید.
function enqueue_media_uploader_scripts() {
if (is_admin()) {
wp_enqueue_media();
wp_enqueue_script('your-plugin-media-uploader', plugin_dir_url(__FILE__) . 'path-to-your-js-file.js', array('jquery'), null, true);
}
}
add_action('admin_enqueue_scripts', 'enqueue_media_uploader_scripts');
ذخیره و بازیابی URL رسانه:
حالا، باید با ذخیره و بازیابی URL رسانه در افزونه خود برخورد کنید. میتوانید از توابع update_option
و get_option
برای ذخیره و بازیابی URL استفاده کنید.
// ذخیره URL رسانه
$media_url = sanitize_text_field($_POST['media_url']);
update_option('your_plugin_media_url', $media_url);
// بازیابی URL رسانه
$media_url = get_option('your_plugin_media_url');
این خطوط را با توجه به ساختار و تنظیمات افزونه خود تطبیق دهید.
این تا حدودی! با این مراحل، باید یک آپلود کننده رسانه کارآمد در افزونه وردپرس خود داشته باش
درباره اسحاق شفایی
اسحاق شفایی مدیر وبسایت کیت وردپرس و دانشجوی کارشناسی ارشد Computer Science در دانشگاه پادوا ایتالیا هستم. چندین سال است که در حوزه وب فعالیت می کنم و تخصص اصلیم توسعه وب هست همچنین بعد از یادگیری علاقه زیادی به آموزش دادن دارم.
سایر نوشته های اسحاق شفایی
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.