update_attached_file()
Обновляет путь прикрепленного файла (вложения) в метаполе "_wp_attached_file". Путь обновляется для указанного ID вложения.
Функуия не перемещает файл, а просто обновляет метаполе _wp_attached_file, обычно, после того, как файл был перемещен.
Эта функция используется внутри wp_insert_post() и обычно отдельно не используется.
В метаполе сохраняется не полный путь от корня сервера, а относительный путь от каталога загрузок.
Возможно вместо этой функции, вам пригодится хук-фильтр update_attached_file - он используется в функции перед тем, как обновить данные в метаполе.
Работает на основе: update_post_meta(), delete_post_meta()
Хуки из функции
Возвращает
int|true|false.
int— ID мета-записи, если для вложения не существовало ключа _wp_attached_file.true— при успешном обновлении.false— при ошибке. Или если переданное $file совпадает с уже сохранённым в базе.
Использование
update_attached_file( $attachment_id, $file );
- $attachment_id(число) (обязательный)
- ID прикрепленного файла (вложения).
- $file(строка) (обязательный)
- Новый путь до файла-вложения, который нужно записать.
Примеры
#1 Пример работы
Допустим мы записали новый файл и нам нужно обновить путь до этого файла, который хранится в метаполе _wp_attached_file.
update_attached_file( $post_ID, $postarr['file'] );
Список изменений
| С версии 2.1.0 | Введена. |