Intereting Posts
как добавить правило rewrite в wordpress default post type Взволнованный У меня есть фанки .htaccess для сайта WP в свете странного поведения в поисковых системах В чем цель $ merged_filters? Пользовательские действия, не работающие в Woocommerce разрешения локальной папки vs chown – соображения безопасности Эхо количество отображаемых сообщений Как разобрать этот короткий код? Меню вторичной навигации на одной странице Как проверить, имеет ли конкретный дочерний термин общие должности с другим набором дочерних терминов в рамках одной таксономии? Ввод php внутри короткого кода echo php WordPress Переключение на заголовок Accept-Language Заказ wp_get_nav_menu_items не работает Мне нужен пользовательский url например альбомы / album_folder / album_type / album1. Как я могу это достичь? Обновление родительских тем и обновление темы стартера помощь Я изменил одну валюту в woocommerce, и все разрушено

Как регистрировать изображения, загружаемые через FTP в медиа-библиотеку?

Я использую свой собственный файл upload.php для загрузки изображений:

$upload_dir = wp_upload_dir(); $targetDir = $upload_dir['path'].'/'; 

Он работает так же, как и в этом исключении, что изображения, загруженные в uploads/2012/08/ , не отображаются в Media Library . Есть ли какая-либо функция «зарегистрировать» их там и в базе данных WP?

Solutions Collecting From Web of "Как регистрировать изображения, загружаемые через FTP в медиа-библиотеку?"

Это потому, что вы не регистрируете их как тип медиа. Каждая загрузка – это сообщение WordPress типа attachment .

Для начала это будет примерно так:

 $file_name = 'Some Name'; $file_path = '/path/to/uploads/2012/08/04/newfile.jpg'; $file_url = 'http://img.wordpressask.com/php/newfile.jpg'; $wp_filetype = wp_check_filetype($file, null); $attachment = array( 'guid' => $file_url, 'post_mime_type' => $wp_filetype['type'], 'post_title' => $file_name, 'post_status' => 'inherit', 'post_date' => date('Ymd H:i:s') ); $attachment_id = wp_insert_attachment($attachment, $file_path); $attachment_data = wp_generate_attachment_metadata($attachment_id, $file_path); wp_update_attachment_metadata($attachment_id, $attachment_data); 

Это должно создать запись на панели мультимедиа, а также преобразовать изображение во все размеры, которые вы используете в своей теме.

Хорошим вариантом для вас является вставка указанной выше процедуры в файл upload.php . Для этого вам также необходимо будет включить файлы WordPress. В противном случае вам придется сказать WordPress как-то запустить это, возможно, с помощью запроса $_REQUEST или задания cron.

Я думаю, вы должны начать копать в функции media_handle_upload . Это описание в кодексе нечеткое, поэтому постарайтесь понять его код .

Вы можете использовать эту функцию для обработки даже загрузок для вас или вы можете захватить некоторые части своего кода, чтобы интегрировать их самостоятельно.