изменить URL для статических файлов в /wp-admin на URL CDN

Вопрос или проблема

Я недавно купил CDN и использовал плагин для изменения URL сайта для всех статических файлов в папках “/wp-content” и “/wp-include” на URL CDN.

Есть ли способ изменить URL сайта для статических файлов (особенно изображений) в “/wp-admin” на URL CDN?

Я не уверен насчет wp-includes, но вы можете довольно легко изменить URL вашей папки wp-content, установив эту константу в файле wp-config.php:

define('WP_CONTENT_URL', 'https://mybucket.nyc3.cdn.digitaloceanspaces.com');

По умолчанию константа WP_CONTENT_URL установлена на URL директории wp-content установки WordPress. Однако ее можно настроить, чтобы она указывала на другой URL или домен, что может быть полезно в определенных сценариях, таких как, когда вы хотите обслуживать свой статический контент с CDN или субдомена.

https://developer.wordpress.org/apis/wp-config-php/#moving-wp-content-folder

Ответ или решение

Для изменения URL статических файлов в директории /wp-admin на CDN-адрес, важно понимать несколько аспектов работы с WordPress и его структурой.

Понимание структуры WordPress

В WordPress статические файлы, такие как изображения, JavaScript и CSS, по умолчанию загружаются из каталогов wp-content и wp-includes. Однако файлы админ-панели ( /wp-admin) также могут безусловно использоваться в вашем сайте – особенно если вы хотите оптимизировать производительность благодаря CDN.

Как изменить URL для статических файлов в /wp-admin

Для изменения адресов этих файлов на CDN вам нужно будет следовать нескольким шагам, так как нет встроенной функции, которая позволяет напрямую изменить URL для файлов в /wp-admin. Вместо этого вы можете использовать фильтры и хуки в WordPress.

1. Использование фильтров WordPress

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

function change_admin_url_to_cdn( $src ) {
    if ( strpos( $src, '/wp-admin/' ) !== false ) {
        $cdn_url = 'https://mybucket.nyc3.cdn.digitaloceanspaces.com';
        $src = str_replace( home_url(), $cdn_url, $src );
    }
    return $src;
}

add_filter('admin_url', 'change_admin_url_to_cdn');
add_filter('includes_url', 'change_admin_url_to_cdn');

Этот код определяет функцию change_admin_url_to_cdn, которая проверяет, содержит ли src путь /wp-admin/. Если это так, он заменяет URL на ваш CDN-адрес.

2. Проверка файлов

После внесения изменений не забудьте протестировать сайт. Откройте инспектор в браузере (обычно доступен с помощью правого клика и выбора опции "Просмотреть код") и убедитесь, что файлы загружаются с использованием нового CDN-адреса.

3. Важные замечания

  • Кэширование: Убедитесь, что кэширование вашего сайта, как на уровне сервера, так и на уровне CDN, настроено правильно. Это обеспечит быструю загрузку ваших страниц и минимизирует проблему с устаревшими данными.
  • Безопасность: Будьте осторожны при изменении файлов и функций в WordPress. Создание резервной копии вашего сайта перед внесением таких изменений — это хорошая практика.
  • Обновление URL: Если вы меняете URL в /wp-admin, это может затронуть плагины или темы, которые зависят от URL для своих ресурсов. Проверьте их совместимость.

Заключение

Изменение URL статических файлов в директории /wp-admin на адрес CDN — это более сложная задача, чем простое изменение URL для /wp-content или /wp-includes. Однако, используя фильтры и хуки, вы можете добиться желаемого результата, тем самым улучшив производительность и время загрузки вашего сайта. Обязательно протестируйте изменения и следите за их воздействием на функциональность сайта.

Оцените материал
Добавить комментарий

Капча загружается...