Добавить в корзинуПозвонить
Найти в Дзене
IT DevOps Web SEO от Алексея

Автоматическая оптимизация изображений Wordpress на Ubuntu Server

Я лично жутко не люблю нагружать WordPress множеством плагинов. С помощью собственных скриптов и инструментов мы можем оптимизировать сайт и добавлять нужные функции без лишнего бремени. Начнем: 1. Установите необходимые инструменты: Убедитесь, что на вашем сервере установлены ImageMagick, jpegoptim, и optipng. Если их нет, установите их с помощью: sudo apt-get update sudo apt-get install imagemagick jpegoptim optipng 2. Создайте скрипт: Создайте новый файл для скрипта, например optimize_images.sh: nano optimize_images.sh 3. Добавьте следующий код в скрипт: #!/bin/bash # Путь к каталогу загрузок WordPress UPLOADS_DIR="/path/to/wordpress/wp-content/uploads" # Оптимизация JPEG изображений find "$UPLOADS_DIR" -type f -iname '*.jpg' -o -iname '*.jpeg' | while read -r img; do echo "Оптимизация $img" jpegoptim --max=80 "$img" done # Оптимизация PNG изображений find "$UPLOADS_DIR" -type f -iname '*.png' | while read -r img; do echo "Оптимизация $img" optipng -o7 "$img" done # Изменение раз

Я лично жутко не люблю нагружать WordPress множеством плагинов.

С помощью собственных скриптов и инструментов мы можем оптимизировать сайт и добавлять нужные функции без лишнего бремени.

Начнем:

1. Установите необходимые инструменты:

Убедитесь, что на вашем сервере установлены ImageMagick, jpegoptim, и optipng. Если их нет, установите их с помощью:

sudo apt-get update
sudo apt-get install imagemagick jpegoptim optipng

2. Создайте скрипт:

Создайте новый файл для скрипта, например optimize_images.sh:

nano optimize_images.sh

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

#!/bin/bash
# Путь к каталогу загрузок WordPress
UPLOADS_DIR="/path/to/wordpress/wp-content/uploads"
# Оптимизация JPEG изображений
find "$UPLOADS_DIR" -type f -iname '*.jpg' -o -iname '*.jpeg' | while read -r img; do
echo "Оптимизация $img"
jpegoptim --max=80 "$img"
done
# Оптимизация PNG изображений
find "$UPLOADS_DIR" -type f -iname '*.png' | while read -r img; do
echo "Оптимизация $img"
optipng -o7 "$img"
done
# Изменение размеров изображений (например, если ширина больше 1200px)
find "$UPLOADS_DIR" -type f -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' | while read -r img; do
echo "Изменение размера $img"
convert "$img" -resize 1200x1200> "$img"
done
echo "Оптимизация изображений завершена."

Замените /path/to/wordpress/wp-content/uploads на фактический путь к вашему каталогу загрузок.

4. Сделайте скрипт исполняемым:

chmod +x optimize_images.sh

5. Запустите скрипт:

./optimize_images.sh

▎Настройка автоматического выполнения

Чтобы автоматически запускать этот скрипт через определённые промежутки времени, мы будем использовать cron.

1. Откройте crontab для редактирования:

crontab -e

2. Добавьте строку, чтобы запускать скрипт, например, каждый день в полночь:

0 0 * * * /path/to/your/script/optimize_images.sh >> /path/to/your/log/file.log 2>&1

Замените /path/to/your/script/optimize_images.sh на путь к вашему скрипту и /path/to/your/log/file.log на путь к файлу лога, чтобы отслеживать выполнение.

Примечание

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

• Скрипт можно модифицировать в зависимости от ваших потребностей (например, изменить параметры сжатия или размер изображения).