Покращення веб-сайту WordPress. Удосконалення магазину WooCommerce

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

Округлення бонусних балів

Однією з проблем, які були на сайті, було округлення балів, які нараховувалися користувачам. Якщо цифра кругла, після коми не повинно бути нулів. На сайті використовувався плагін SUMO Reward Points – WooCommerce Reward System від FantasticPlugins. Він був налаштований і не дозволяв позбутися нулів після коми, якщо число кругле.

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

Покращення фільтрації AJAX

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

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

Покращення списку бажань

Сайт клієнта використовував застарілу версію списку бажань. Через це список бажань відтворювався під час кожного завантаження сторінки. Крім того, якщо користувач додавав хоча б 1 товар до списку бажань, кешована сторінка йому більше не відображалася, а для кожного продукту перевірялося, чи додано його до вибраного цього клієнта чи ні.

Зазвичай ми пропонуємо клієнтам готове рішення – frontend-first wishlist, який працює за тим же принципом, що і кошик WooCommerce – на основі фрагментів AJAX. Всі «сердечка» на сторінці також розміщені за допомогою JS. Відповідно, буквально після 1 запиту на сервер під час рендерингу сторінки ми вже знаємо поточний список бажань і кешуємо його на стороні клієнта. Якщо щось зміниться, ми оновимо. Все це синхронізовано між вкладками.

Після уважного розгляду ми виявили, що розробники плагінів планують те саме в наступній основній версії, яка ось-ось запланована.

Звичайно, ми не продавали клієнту додаткові години розробки, а просто чекали виходу оновлення. Ретельно протестувавши його на тестовому сервері та з реальними даними, він негайно був запущений в продакшн.

Висновок

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