How to Convert WordPress Uploaded Image Filenames to Lowercase

Managing a WordPress website involves paying attention to every detail, including how your media files are named. Consistent file naming not only enhances your site’s organization but also plays a role in search engine optimization (SEO). In this tutorial, we’ll guide you through a fundamental yet often overlooked aspect: converting uploaded image filenames to lowercase. By ensuring uniformity in your media files, you’re not only improving your site’s aesthetics but also enhancing its SEO potential.

In this step-by-step guide, we’ll walk you through the process of automatically converting uploaded image filenames to lowercase without relying on plugins. By the end of this tutorial, you’ll have a clean and consistent approach to managing your media files, contributing to a more professional and SEO-friendly WordPress website. Let’s dive in and optimize your website’s file naming conventions together.

Before proceeding with any customizations in WordPress, it’s essential to set up a child theme. A child theme acts as a safe and efficient way to make modifications without affecting the parent theme. If you haven’t set up a child theme yet, follow this tutorial on How to Create a Child Theme for Customization. It will guide you through the process and ensure that your customizations remain intact even after theme updates.

Modify Your Child Theme’s functions.php File

To get started, open your WordPress child theme’s functions.php file. This file acts as the central hub for customizing your theme’s functionality. You can edit it directly within the Theme Editor in your WordPress dashboard and, for more advanced editing, you can use an external code editor in combination with FTP (File Transfer Protocol). Add the following code snippet at the end of the functions.php file:

function convert_uploaded_image_filenames_to_lowercase( $file ) {
	$image_extensions = array(

	if ( in_array( $file['type'], $image_extensions ) ) {
		$image_extension = pathinfo( $file['name'] );
		$image_name      = strtolower( $image_extension['filename'] );
		$file['name']    = $image_name . '.' . $image_extension['extension'];

	return $file;
add_filter( 'wp_handle_upload_prefilter', 'convert_uploaded_image_filenames_to_lowercase', 20 );
Code language: PHP (php)

This PHP function, convert_uploaded_image_filenames_to_lowercase, checks if an uploaded file is an image by comparing its MIME type with a predefined list of image extensions. If it’s an image, the function extracts the filename, converts it to lowercase, and appends the original file extension. The function then returns the modified file details. The add_filter function hooks this custom function into WordPress’s file upload process, allowing it to modify image filenames before they are processed and stored in your media library.

Save Your functions.php Modifications and Test

Finalize the modifications in your theme’s functions.php file by saving the changes you’ve made. Next, thoroughly test the integrated features by engaging with your WordPress website, such as performing login and logout actions. This straightforward process guarantees that the functionalities are successfully implemented and operating as intended on your site.

That’s it! By following these steps and implementing the custom function, you’ve successfully configured your WordPress website to convert uploaded image filenames to lowercase without using plugins. This simple adjustment promotes uniformity in your media files, contributing to a more professional appearance and improved SEO practices on your website.

Leave your feedback and help us improve ๐Ÿถ

We hope you found this article helpful! If you have any questions, feedback, or spot any errors, please let us know in the comments. Your input is valuable and helps us improve. If you liked this article, please consider sharing it with others. And if you really enjoyed it, you can show your support by buying us a cup of coffee โ˜•๏ธ or donating via PayPal ๐Ÿ’ฐ.

More free knowledge, because why not?

Your thoughts matter, leave a reply ๐Ÿ’ฌ

Your email address will not be published. Required fields are marked *