Я пытаюсь, чтобы WordPress автоматически сохранял метаданные «кредит», которые хранятся в загружаемых мной изображениях. Я знаю, что это будет введено в качестве пользовательского метаполя поста с помощью update_post_meta()
.
«Кредитная» информация собирается wp_read_image_metadata()
, но media_handle_upload()
не использует ее. Он использует только информацию «заголовок» и «заголовок», собранные из изображения для post_content
и post_title
соответственно.
Я нашел несколько примеров того, как добавить пользовательские поля метаданных вложения после загрузки при редактировании изображения, но поскольку WP уже собирает эту информацию из метаданных изображения, я бы хотел найти способ сохранить ее как изображение загружен
Мне неясно, какие шаги нужно предпринять, чтобы подключиться media_handle_upload()
(кажется, что это не так), чтобы я мог позвонить, update_post_meta
чтобы сохранить «кредитную» строку для вложения.
Ответы:
Вы можете использовать
wp_generate_attachment_metadata
:Вторым аргументом фильтра является идентификатор вложения, поэтому не должно быть проблем с добавлением мета-сообщения:
Проверка содержимого
$metadata['image_meta']
с помощью FirePHP, вот результаты:[Обновить]
Полное тестовое добавление пользовательского столбца на экране библиотеки мультимедиа (
/wp-admin/upload.php
) для отображения метаинформации поста:Отчасти связанные вопросы и ответы: создание новой категории при сохранении на основе информации о публикации
источник