# Функция WP_GET_IMAGE_EDITOR()
Функция WP_GET_IMAGE_EDITOR() возвращает экземпляр класса WP_Image_Editor и загружает в него файл изображения.
## Возвращаемое значение
Функция может вернуть либо объект WP_Image_Editor при успешном выполнении, либо объект WP_Error в случае ошибки.
## Использование
```php
wp_get_image_editor( $path, $args );
- $path (string) (обязательный) — путь к файлу изображения, который нужно загрузить.
- $args (array) — дополнительные аргументы для получения редактора изображения. По умолчанию: пустой массив.
Примеры
Пример 1: Создание миниатюры изображения
Предположим, у нас есть изображение по пути /wp-content/uploads/2014/02/uka.png (оно находится на нашем сервере). Мы покажем, как создать уменьшенную копию этого изображения с помощью класса WP_Image_Editor.
$file_path = $_SERVER['DOCUMENT_ROOT'] . '/wp-content/uploads/2014/02/uka.png';
// загрузка объекта
$image = wp_get_image_editor( $file_path );
// можно указать URL вместо абсолютного пути:
// $image = wp_get_image_editor( 'http://wp-kama.ru/wp-content/uploads/2014/02/uka.png' );
// обработка изображения
if ( ! is_wp_error( $image ) ) {
// поворачиваем изображение на 90 градусов
$image->rotate( 90 );
// изменяем размер на 80x80
$image->resize( 80, 80, true );
// создаем новый файл с тем же именем и добавляем суффикс
$new_file_path = $image->generate_filename();
// сохраняем изображение как new_image.png в корне сайта
$image->save( $new_file_path );
}
Изменения
Функция была введена в версии 3.5.0.
Исходный код функции WP_GET_IMAGE_EDITOR()
Вот как выглядит код функции wp_get_image_editor():
function wp_get_image_editor( $path, $args = array() ) {
$args['path'] = $path;
// Если mime тип не задан, пытаемся извлечь его из файла
if ( ! isset( $args['mime_type'] ) ) {
$file_info = wp_check_filetype( $args['path']);
if ( isset( $file_info ) && $file_info['type'] ) {
$args['mime_type'] = $file_info['type'];
}
}
// Проверка и установка mime типа вывода
if ( isset( $args['mime_type'] ) ) {
$output_format = wp_get_image_editor_output_format( $path, $args['mime_type'] );
if ( isset( $output_format[ $args['mime_type'] ] ) ) {
$args['output_mime_type'] = $output_format[ $args['mime_type'] ];
}
}
$implementation = _wp_image_editor_choose( $args );
if ( $implementation ) {
$editor = new $implementation( $path );
$loaded = $editor->load();
if ( is_wp_error( $loaded ) ) {
return $loaded;
}
return $editor;
}
return new WP_Error( 'image_no_editor', __( 'Редактор не может быть выбран.' ) );
}
Связанные функции
- add_image_size() — добавляет новое изображение с заданными размерами.
- get_post_thumbnail_id() — получает ID миниатюры поста.
- get_the_post_thumbnail() — получает миниатюру поста.
- set_post_thumbnail() — устанавливает миниатюру для поста.
Если у вас есть вопросы или вы хотите узнать больше о работе с изображениями в WordPress, не стесняйтесь ознакомиться с другими функциями, связанными с миниатюрами и изображениями.