Как изменить URL выводимых изображений в WordPress

Иногда возникает необходимость изменить URL выводимых изображений в WordPress. Это полезно, если вы хотите оптимизировать загрузку сайта, использовать CDN, изменить структуру ссылок или скрыть реальное расположение файлов. В этой статье разберём несколько способов, как это сделать с помощью кода и плагинов.

Почему стоит менять URL изображений в WordPress

По умолчанию WordPress формирует URL изображений исходя из структуры загрузок, например, https://example.com/wp-content/uploads/2024/06/image.jpg. Это работает, но не всегда подходит для SEO, скорости загрузки или безопасности.

Основные причины изменить URL изображений:

  • Подключение CDN для ускорения загрузки.
  • Сокрытие реального пути к файлам.
  • Оптимизация SEO, если нужно изменить структуру ссылок.
  • Интеграция с внешними сервисами или облачными хранилищами.

Рассмотрим, как реализовать эти задачи.

Изменение URL изображений через фильтр WordPress wp_get_attachment_url

WordPress позволяет фильтровать URL вложений через хуки. Например, чтобы заменить базовый путь URL, можно использовать следующий код в файле functions.php вашей темы или в отдельном плагине:

function wpskills_change_attachment_url( $url, $post_id ) {
    // Меняем базовый URL с wp-content/uploads на свой CDN
    $cdn_url = 'https://cdn.example.com/uploads';
    $upload_dir = wp_upload_dir();
    if ( strpos( $url, $upload_dir['baseurl'] ) !== false ) {
        $url = str_replace( $upload_dir['baseurl'], $cdn_url, $url );
    }
    return $url;
}
add_filter( 'wp_get_attachment_url', 'wpskills_change_attachment_url', 10, 2 );

В этом примере мы заменяем стандартный путь на CDN-адрес. Такой способ подходит, если у вас есть настроенный CDN, который зеркалит папку загрузок.

Как проверить работу фильтра

После добавления кода очистите кэш сайта, если используете плагины кеширования, и проверьте в браузере исходный код страницы. URL изображений должны начинаться с https://cdn.example.com/uploads.

Использование плагина Clearfy Pro для управления URL медиафайлов

Плагин Clearfy Pro предлагает много функций оптимизации, в том числе управление выводом URL медиафайлов.

С помощью Clearfy Pro можно:

  • Подключить CDN без изменения кода.
  • Автоматически переписать URL медиа.
  • Удалить лишние параметры из URL изображений.

Это отличный вариант для тех, кто не хочет лезть в код, но хочет контролировать URL изображений и повысить скорость загрузки.

Реализация перенаправления старых URL изображений на новые

Если вы изменили структуру URL изображений, важно не потерять трафик и не получить 404 ошибки. Для этого нужно настроить перенаправления.

Пример простого перенаправления в .htaccess:

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/wp-content/uploads/(.*)$
RewriteRule ^wp-content/uploads/(.*)$ https://cdn.example.com/uploads/$1 [R=301,L]

Это правило перенаправит все запросы с классического пути на новый CDN.

Как добавить пользовательские поля с альтернативным URL для изображений

Иногда нужно не заменять URL глобально, а для отдельных изображений указывать альтернативный путь. Для этого можно использовать пользовательские поля (custom fields) и фильтр.

Пример реализации:

function wpskills_custom_attachment_url( $url, $post_id ) {
    $custom_url = get_post_meta( $post_id, '_wpskills_custom_url', true );
    if ( $custom_url ) {
        return esc_url( $custom_url );
    }
    return $url;
}
add_filter( 'wp_get_attachment_url', 'wpskills_custom_attachment_url', 10, 2 );

Теперь вы можете для каждого изображения в админке добавить поле _wpskills_custom_url с нужным URL.

Поддержка WebP и замена расширений в URL изображений

Для лучшей оптимизации сайта рекомендуют использовать формат WebP. Можно динамически менять расширение выводимых изображений на .webp, если браузер поддерживает.

Пример кода:

function wpskills_replace_image_extension_to_webp( $url, $post_id ) {
    if ( strpos( $_SERVER['HTTP_ACCEPT'], 'image/webp' ) !== false ) {
        $url_webp = preg_replace( '/\.(jpg|jpeg|png)$/i', '.webp', $url );
        return $url_webp;
    }
    return $url;
}
add_filter( 'wp_get_attachment_url', 'wpskills_replace_image_extension_to_webp', 10, 2 );
<

Важно, чтобы у вас реально существовали файлы с расширением .webp в папке загрузок.

Вывод

Изменение URL выводимых изображений в WordPress — это мощный инструмент для оптимизации сайта, безопасности и SEO. Вы можете использовать фильтры WordPress для гибкой замены ссылок, плагин Clearfy Pro для удобного управления и настраивать перенаправления, чтобы не потерять позиции в поиске.

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

Как полностью отключить XML-RPC в WordPress без плагинов
13.12.2025
Как изменить вывод автора в WordPress
13.12.2025
Как добавить автоматический alt к изображениям в WordPress
08.01.2026
Отсутствие категории в URL WordPress: как исправить и настроить
16.02.2026
Как удалить meta из заголовка постов WordPress
18.11.2025