К самому загрузчику я добавил генерацию имени, готовое имя вставляю в тело статьи с помощью бб кода, вывод картинки дописывал в functions.php, а именно в "Функция вставки BB-кода"
<?php
if (isset($_POST['upload'])){
//Список разрешенных файлов
$whitelist = array(".gif", ".jpeg", ".jpg", ".png");
$data = array();
$error = true;
//Проверяем разрешение файла
foreach ($whitelist as $item) {
if(preg_match("/$item\$/i",$_FILES['userfile']['name'])) $error = false;
}
//если нет ошибок, грузим файл
if(!$error) {
$folder = 'upload/img/';//директория в которую будет загружен файл
// Получаем расширение файла
$file_ext = strtolower(strrchr($_FILES['userfile']['name'],'.'));
// Генерируем случайное число
$file_name = uniqid(rand(10000,99999));
// Формируем путь на сервере
$uploadedFile = $folder.$file_name.$file_ext;
if(is_uploaded_file($_FILES['userfile']['tmp_name'])){
if(move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadedFile)){
$data = $_FILES['userfile'];
$data['name'] = $file_name.$file_ext;
} else {
$data['errors'] = "Во время загрузки файла произошла ошибка";
}
} else {
$data['errors'] = "Файл не загружен";
}
} else {
$data['errors'] = 'Вы загружаете запрещенный тип файла';
}
//Формируем js-файл
$res = '<script type="text/javascript">';
$res .= "var data = new Object;";
foreach($data as $key => $value){
$res .= 'data.'.$key.' = "'.$value.'";';
}
$res .= 'window.parent.handleResponse(data);';
$res .= "</script>";
echo $res;
} else {
die("ERROR");
}
?>
Добавлено через 03:27 сек.
Скрытый контент: Для выполнения действия необходимо авторизоваться!