This lets you upload images from a theme or plugin right into the WordPress Media Library. This leaves the images unattached to any post. They will simply be sitting in the Media Library ready for use.
Another term for this is to “sideload” an image into WordPress.
You don’t want to repeatedly upload the same image over and over agin, so hook it to your theme or plugin activation. This way it will only upload images once, upon activation. This example is for use within a theme so it’s hooked to “after_switch_theme”.
This example uploads 3 images from the theme’s “images” directory. Change the first parameter to show the path and filename of your own images. The second parameter (“0”) ensures that the images will not be attached to any post, but rather will just sit in the Media Library.
function my_theme_activation() { function my_sideload_image() { $img1 = media_sideload_image( get_template_directory_uri() . '/images/img1.png', 0 ); $img2 = media_sideload_image( get_template_directory_uri() . '/images/img2.png', 0 ); $img3 = media_sideload_image( get_template_directory_uri() . '/images/img3.png', 0 ); } add_action( 'admin_init', 'my_sideload_image' ); } add_action('after_switch_theme', 'my_theme_activation');
Questions and Comments are Welcome