скрыть путь к папке, когда пользователь загружает файл

Я использую wordpress для своего сайта, и в моей папке есть несколько обоев, которые я предоставляю для скачивания. Но я не хочу, чтобы пользователи знали точное расположение файлов в папке. Поскольку есть подписка на скачивание.

предположим, что мой файл хранится в

http://www.example.com/wp-content/example.folder/awesome.png 

Теперь, как скрыть имя папки example.folder и использовать любое поддельное имя, этот dosent появляется во время загрузки. На самом деле нужна большая помощь в этом. может ли кто-нибудь предложить мне хороший метод. Я попробовал некоторые плагины WordPress, но не помогал в этом.

Пример с PDF-документом

 $nameOld = "/public_html/wp-content/example.folder/oldnme.pdf"; $nameNew = "newName.pdf" ; header("Content-Transfer-Encoding: binary"); header('Content-type: application/pdf'); header("Content-disposition: attachment; filename=$nameNew"); // readfile($nameOld); 

Edit Prove of Concept для вашей системы изображений с помощью download.php?img=flower без расширения и flower шоу – это имя изображения

 $directory = "/public_html/wp-content/example.folder/"; $types = array("jpg","gif","png"); $ext = null; if (! isset($_GET['img'])) { die("Invalid URL"); } $nameOld = filter_var($_GET['img'], FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH | FILTER_FLAG_STRIP_LOW); $nameNew = uniqid(basename($nameOld)); // File the file foreach ( $types as $type ) { if (is_file($nameOld . "." . $type)) { $ext = $type; break; } } if ($ext == null) { die("Sorry Image Not Found"); } $nameOld .= "." . $ext; $type = image_type_to_mime_type(exif_imagetype($nameOld)); header("Content-Transfer-Encoding: binary"); header('Content-type: ' . $type); header("Content-disposition: attachment; filename=$nameNew"); // readfile($nameOld);