Скрипт timthumb php, розробка, makegood

У попередньому пості я постарався дати докладний посібник як отримати перше зображення з поста в WordPress. яке в подальшому можна використовувати в якості анонсу для статті, але цей спосіб не дозволяє «гнучко» масштабувати зображення, масштабування можливо тільки при зміні значень атрибутів висоти і ширини в тезі і якщо ви захочете зробити прев'ю квадратним, наприклад 200 x 200px, зображення буде спотворено (передбачається, що оригінал зображення - прямокутник), отже, в більшості випадків вам доведеться масштабувати зображення по одній зі сторін.

У цій статті розглянемо скрипт, який дозволить змінити розмір зображення, збереже його пропорції, при необхідності виріже і збереже всі наші превью в окремій папці (кеш). До того ж, все нижче наведене потребують мінімальних зусиль і прекрасно працює на будь-якому движку, точніше скрипт не залежить від використовуваної вами системи управління, так як він є самостійним.

Отже, для реалізації даного завдання ми скористаємося чудовим скриптом TimThumb PHP. Даний скрипт дозволяє автоматично змінити розмір зображення з заданими настройками і зберігати превью в кеші. Для роботи скрипта потрібно бібліотека GD встановлена ​​на вашому хостингу і PHP версії не нижче 4.3.

Для початку необхідно завантажити скрипт, розпакувати і розмістити в будь-якій папці з вашим сайтом, припустимо, що ви використовуєте WordPress. Додайте скрипт timthumb.php в папці з вашою темою (скрипт може знаходиться в будь-якій папці або поза нею, головне правильно вказати шлях до нього).

Після першого запуску скрипт TimThumb PHP автоматично створить папку / cache / с правами доступу 777, якщо на вашому хостингу є які-небудь обмеження, то створіть папку / cache / в тій же папці, де розташовується сам скрипт і встановіть на неї права 777.

Залишилося застосувати скрипт до зображення, розмір якого необхідно змінити, ось приклад як це робиться:

Основні параметри використовуються в сценарії:

  • w: width - ширина превью;
  • h: height - висота превью;
  • zc: zoom crop (0 or 1) - цей параметр залишився загадкою.
  • q: quality (default is 75 and max is 100) - якість превью.

Для того щоб прискорити кешування, додайте наступні правила в файл .htaccess:

Тепер перейдемо від теорії до практики, скористаємося цим скриптом на движку WordPress для створення мініатюр розміром 200 x 200px, припустимо, що ви ознайомилися з матеріалом попередньої статті (див. Посилання, яку я дав на початку топіка).

Ось так виглядає код, за допомогою якого ми «відловлювали» перше зображення в WordPress:

змінимо його наступним чином:

Таким чином, нам не потрібно створювати мініатюри вручну, якщо ви захочете відновити дизайн сайту і вам будуть потрібні мініатюри іншого розміру, то досить буде замінити параметри w = 200h = 200 в рядку вище і очистити папку з кешем, щоб мініатюри створилися заново (пам'ятаєте, що спеціальної папки для мініатюр не існує, тобто всі вони зберігаються в папці / cache /.

Деякі важливі параметри, які можна змінити безпосередньо в файлі timthumb.php і задати налаштування за замовчуванням:

Якщо щось раптом не працює:

  • перевірте, щоб були вказані правильно абсолютні шляхи до скрипта і зображення в вираженні;
  • можливо на папку, в якій знаходиться скрипт timthumb.php, не дані права 777;
  • після зміни будь-яких параметрів мініатюри (висоти, ширини, якості.) не забувайте очистити папку / cache /;

Схожі статті