Доступность магазина на WooCommerce Ядро подтянули — ломаются тема, расширения и путь к оплате
За последний год в ядро WooCommerce внесли больше ста сорока исправлений доступности: ловушки фокуса в модальных окнах, подписи полей в оформлении заказа и личном кабинете, объявления об изменении корзины, роли у вкладок и фильтров. Разработчики честно пишут, что это движение к WCAG 2.2 уровня AA, а не заявление о полном соответствии. И главное: до конкретного магазина эти улучшения часто не доходят. Ниже — почему так и что проверять в своём.
Что уже исправили в самом WooCommerce
Если магазин на свежей версии и тема не вмешивается в шаблоны, часть работы уже сделана за вас — это стоит знать, прежде чем платить за «приведение к стандарту».
- Модальные окна удерживают и возвращают фокус, а их появление объявляется
- Поля в оформлении заказа, входе и личном кабинете подписаны, ошибки связаны с полями
- Изменение корзины и выбор варианта товара объявляются экранному диктору
- У вкладок, аккордеонов и фильтров заданы роли
- У кнопок убрали неоднозначные и пустые подписи
- Поправлена структура заголовков в шаблонах товара, оформления, личного кабинета и мини-корзины
- Клавиатура в фильтрах товаров, отзывах и мини-корзине — ловушки фокуса и порядок перехода
Почему это не доходит до вашего магазина
- 01
Старая версия
Исправления живут в новых выпусках. Магазин, который не обновляли год-два, их просто не получил — и первое, что мы проверяем, это версия WooCommerce и WordPress.
- 02
Тема держит свои копии шаблонов
Темы часто кладут к себе копии шаблонов WooCommerce, чтобы изменить вёрстку. Такая копия застывает в том виде, в каком её сделали: улучшения ядра до неё не доходят. В разделе «Состояние» WooCommerce такие шаблоны помечены как устаревшие — это первое место, куда мы смотрим.
- 03
Расширения
Свотчи вариантов, фильтры, калькуляторы доставки, виджеты отзывов и чаты рисуют свою разметку. Про доступность ядра они не знают, и их надо проверять по одному.
- 04
Настройки и содержимое
Описания товаров, названия вариантов, тексты кнопок и картинки с текстом внутри — это ваш контент. Ни одно обновление его не исправит.
Что ломается в магазине чаще всего
- 01
Кнопки «В корзину» в каталоге
На странице категории двадцать одинаковых кнопок. Экранный диктор перечисляет «в корзину, в корзину, в корзину» — какой товар он кладёт, человек не знает. Лечится добавлением названия товара в доступное имя кнопки.
- 02
Выбор варианта
Цвет и размер часто делают квадратиками-картинками без имени и без состояния «выбрано». С клавиатуры по ним не пройти, а диктор не говорит, что именно выбрано сейчас.
- 03
Поле количества
Поле со стрелками «плюс-минус» обычно не подписано, а кнопки увеличения и уменьшения не имеют имён. В корзине таких полей столько же, сколько товаров.
- 04
Фильтры
Ползунок цены почти всегда недоступен с клавиатуры, а результат фильтрации подгружается молча: страница обновилась, но диктор об этом не сказал.
- 05
Галерея и увеличение
Лупа и слайдер фотографий — частый источник ловушек фокуса. Отдельная беда — характеристики, вшитые в картинку: для диктора их не существует.
- 06
Оформление заказа
Самое дорогое место: ошибки оплаты показываются цветом без текста, поля адреса подписаны подсказкой внутри, а шаг доставки обновляется без объявления. Человек не понимает, почему заказ не уходит.
Что делаем мы
- 01
Проходим весь путь покупки
Не одну страницу, а сценарий: каталог → карточка → корзина → оформление → письмо о заказе. Только с клавиатуры и с экранным диктором. Большая часть находок в магазине живёт именно между страницами.
- 02
Разбираемся с темой
Смотрим, какие шаблоны тема переопределила и насколько они устарели. Часто правильный ответ — не чинить копию, а убрать её и вернуться к шаблону ядра, где всё уже исправлено.
- 03
Чиним остальное в дочерней теме
Имена кнопок с названием товара, подписи полей количества, состояние у свотчей, объявления при изменении корзины. Правки идут в дочернюю тему, чтобы обновление их не стёрло.
- 04
Проверяем расширения
Каждое по отдельности. Если фильтр или виджет отзывов недоступен и разработчик не отвечает — предлагаем замену и говорим, во что это обойдётся.
- 05
Готовим заявление
Пишем текст заявления о доступности и ставим отдельной страницей со ссылкой в подвале. Оставшиеся ограничения перечисляем в нём честно.
Чего мы не делаем
- Не ставим виджет доступности вместо работы над магазином
- Не обещаем «полного соответствия»: даже разработчики WooCommerce его не заявляют
- Не трогаем приём платежей без согласования: любая правка на шаге оплаты проверяется тестовым заказом
- Не меняем дизайн карточки и каталога — работаем с кодом, а не с макетом
Проверьте свой магазин
Бесплатная проверка смотрит одну страницу, адрес которой вы ввели. Для магазина этого мало: проверьте по очереди главную, страницу категории и карточку товара — результаты обычно разные, и хуже всего бывает как раз карточка.
Проверить доступность сайтаЧастые вопросы
Нам просто обновить WooCommerce — и всё станет хорошо?
Обновление закрывает часть: в ядре за последний год исправили больше ста сорока вещей. Но если тема держит свои копии шаблонов, обновление их не трогает, и страница товара останется прежней. Начинать стоит с обновления, а дальше смотреть, что осталось.
Как понять, что тема мешает?
В разделе «Состояние» WooCommerce есть список шаблонов, которые тема переопределила, с пометкой об устаревших. Если там десяток файлов — почти наверняка улучшения ядра до вашего магазина не доходят. Это проверяется за минуту и до начала работ.
Надо ли переходить на блоки корзины и оформления?
Не обязательно. Блочные корзина и оформление сделаны новее и ведут себя лучше, но перевод магазина на них — отдельная работа с проверкой оплаты и доставки. Мы предлагаем это, только если классические шаблоны в вашей теме переписаны так, что чинить их дороже.
Что делать с расширениями?
Проверять по одному. Чаще всего проблемы дают свотчи вариантов, фильтры с ползунком цены, виджеты отзывов и чаты. Для части расширений разработчики публикуют отчёты о доступности — если отчёта нет и ответа тоже, честнее заменить расширение или описать ограничение в заявлении.
Ваша бесплатная проверка покажет проблемы магазина?
Частично. Она смотрит одну страницу и видит то, что видно в коде: увеличение, имена кнопок, подписи полей, заголовки. Проверьте отдельно категорию и карточку товара. Корзину и оформление заказа автоматическая проверка не пройдёт — туда нужно заходить руками, это часть платного аудита.
Сколько времени это занимает?
Проверка с отчётом по магазину — три-пять дней, дольше обычного сайта: сценариев больше. Исправления зависят от темы и числа расширений. Точные сроки называем вместе с отчётом, когда виден объём.
Сколько это стоит?
Проверка с отчётом — фиксированная сумма, она указана на странице направления. Исправления считаются по часам после отчёта. Магазин почти всегда дороже обычного сайта, и мы говорим об этом до начала, а не в середине работы.
Кто отвечает за заявление о доступности?
Организация публикует его от своего имени — мы готовим текст и страницу, перечисляем сделанное и оставшиеся ограничения. Для магазина это особенно важно: часть ограничений живёт в чужих расширениях, и об этом лучше написать прямо.
Частые случаи
- Доступность сайта на WordPressПривести к WCAG — без замены темы и переписывания сайта
- Доступность сайта на WixWix закрывает часть требований сам — остальное всё равно делается руками
- Доступность сайта на TildaСтандартные блоки почти готовы — ломается обычно Zero Block
- Доступность сайта клиникиЗапись на приём должна работать с клавиатуры и экранного диктора
- Доступность сайта учебного заведенияСайт, на котором родители находят нужное без посторонней помощи
- Доступность сайта громады и ООРешения, услуги и обращения — доступны без посторонней помощи
- Доступность сайта юриста и бухгалтераКлиент сам находит ответ и сам подаёт заявку
- Доступность сайта ресторанаМеню, которое можно прочитать, и заказ, который можно оформить
- Доступность сайта автосервисаЗапись на ремонт работает с клавиатуры и экранного диктора
- Доступность сайта недвижимостиОбъект можно найти и посмотреть без посторонней помощи
- Доступность туристического сайтаЗабронировать можно с клавиатуры, а не только мышью
- Заявление о доступностиЗаявление о доступности: готовый шаблон