№ 93: Спроба плавного завантаження сторінок галереї - CSS-хитрощі

Anonim

Весь цей час ми проводили в нашому статичному макеті, створюючи розумний JavaScript, який би «згладив» завантаження зображень у Галереї. Тепер, коли ми маємо справжню галерею, яка працює з реальними зображеннями, цього вже немає.

По суті, нам потрібно отримати обгортки зображень, що мають верхній відступ у співвідношенні сторін зображення. Це було легко у статичному макеті, тому що ми знали висоту та ширину зображення. Ми більше не маємо цієї інформації, ми просто маємо URL-адресу зображення.

Ми шукаємо в Google підручник з отримання розмірів зображення за допомогою PHP. Після того, як ми помістимо це на місце і відвідаємо галерею, воно завантажується надзвичайно повільно. Ймовірно, це функція PHP getimagesize. Ми припускаємо, що як тільки це буде в прямому ефірі, і він запитує зображення з того самого сервера, на якому він працює, це буде швидше.

Виявляється, на жаль, це не так. Ця функція просто повільна, оскільки вона повинна запитувати все зображення та обробляти його, щоб отримати необхідну інформацію. Пізніше нам просто доведеться вдатися до чогось зовсім іншого, щоб забезпечити плавне завантаження. Якийсь облом. Якби ми могли повернути час назад, для завантаження цих зображень слід було б скористатися власним завантажувачем медіа WordPress, а не користувацьким полем. Таким чином ми мали б доступ до даних розмірності зображень, які зберігаються в базі даних, що зробило б це можливим.