Есть очень простой способ изменить имя загружаемого файла в WordPress.

Сначала я подумал, что придется работать с функцией wp_upload_bits, но позже нашел более элегантное решение этой проблемы. Мы изменяем имя файла в массиве $_FILES сразу после загрузки следующим образом:

add_filter( 'wp_handle_upload_prefilter', 'wpshopbiz_custom_upload_name' );
function wpshopbiz_custom_upload_name( $file )
{
    $file['name'] = 'newname-'.$file['name'];
    return $file;
}

Всё! Загруженный файл test.jpg станет newname-test.jpg.
Пользуйтесь на здоровье!