Как настроить Wordpress для сохранения миниатюр медиафайлов в отдельной папке?

Как разместить миниатюры изображений, созданные в папке UPLOADS, в отдельной папке, например, в Uploads/thumbnails?
  • 25 сентября 2023 г. 17:17
Ответы на вопрос 2
Для настройки WordPress для сохранения миниатюр медиафайлов в отдельной папке, вам понадобится изменить настройки и добавить немного кода в файл functions.php вашей темы. Вот шаги, которые вы можете выполнить:

1. Создайте отдельную папку в каталоге UPLOADS вашего WordPress сайта. Например, вы можете создать папку с именем "thumbnails" внутри папки UPLOADS.

2. Откройте файл functions.php вашей активной темы. Этот файл обычно находится в папке wp-content/themes/ваша-активная-тема/.

3. Добавьте следующий код в файл functions.php:

```php
function custom_upload_directory( $args ) {
    $id = $_REQUEST['post_id'];
    $parent = get_post( $id )->post_parent;

    if( "post" == get_post_type( $id ) || "page" == get_post_type( $id ) ) {
        $args['path'] = 'wp-content/uploads/thumbnails/'.$args['subdir'];
        $args['url']  = $args['baseurl'] . '/thumbnails/'.$args['subdir'];
        $args['basedir'] = ABSPATH . 'wp-content/uploads/thumbnails';
        $args['baseurl'] = site_url().'/wp-content/uploads/thumbnails';
    }

    return $args;
}
add_filter( 'upload_dir', 'custom_upload_directory' );
```

Этот код изменяет путь папки для сохранения загруженных миниатюр медиафайлов. Он использует папку "thumbnails" в каталоге UPLOADS в качестве нового места для миниатюр.

4. Сохраните изменения в файле functions.php.

После выполнения этих шагов WordPress должен начать сохранять миниатюры медиафайлов в отдельной папке "thumbnails" внутри папки UPLOADS.
Директория /uploads/thumbnails уже должна быть создана. В файле functions.php есть функция custom_thumbnail_path($dir), которая возвращает массив с обновленными путями и URL для загрузки миниатюр изображений. Для этого используется фильтр upload_dir, к которому применяется указанная функция.
Похожие вопросы