Вышла бета-версия WooCommerce 11.0

Вышла бета-версия WooCommerce 11.0; финальный релиз ожидается 28 июля. Эта версия включает в себя улучшения производительности для крупных магазинов, более гибкие клиентские и почтовые процессы, оптимизацию отчетности, а также изменения совместимости для разработчиков расширений. Далее мы рассмотрим все исправления детальнее.

Улучшения производительности для крупных магазинов

Производительность – важный аспект в WooCommerce 11.0: этой теме так или иначе посвящены 28 PR-запросов.

В бета-версии WooCommerce 11.0:

  • исправлены медленные запросы к спискам Orders в админке для крупных магазинов с включенным HPOS;
  • оптимизирована работа эндпоинта products/collection-data в Store API: массивы calculate_attribute_counts иcalculate_taxonomy_counts теперь ограничены по кол-ву элементов (по умолчанию 25), в запросах не учитываются дубли таксономий.
  • появились постоянные счетчики состояния товаров;
  • для товарного фида из POS-системы введена чанковая обработка с возможностью управления размером чанка и таймаутами;

Объектное кэширование товаров в WooCommerce 11.0 будет включено по умолчанию для новых магазинов. Благодаря ему вариативные товары загружаются примерно на 9-12% быстрее на страницах товаров, а комплекты товаров обрабатываются на 6-12% быстрее при оформлении заказа. Протестировать этот эксперимент можно уже сейчас.

Обновления клиентских аккаунтов и email

В версии 11.0 рабочие процессы, связанные с клиентскими аккаунтами и email, стали более гибкими.

Новый фильтр woocommerce_email_preview_show_shipping_details позволяет убирать из превью email все данные, связанные с доставкой, если они не требуются.

Вместо 6-значного пароля теперь используется одноразовая ссылка для подтверждения email.

Верификация email теперь позволяет связать прошлые гостевые заказы с аккаунтами соответствующих клиентов.

Улучшения в области отчетности и аналитики

Теперь при импорте исторических данных выводится уведомление о неудачных импортах заказов с возможностью повторного запуска этого процесса.

Интеграции могут использовать GET /wc-analytics/imports/status и POST /wc-analytics/imports/retry-failed для выявления и восстановления неудачных импортов.

В отчетах о продажах v3 появилось значение refunds (возвраты) по каждому временному интервалу. Версии v1 и v2 остались без изменений.

Для событий аналитики теперь требуется стабильный ID посетителя, чтобы избежать завышения количества сессий из-за ботов.

Экспериментальные возможности продолжают развиваться

Бета-версия Checkout Recovery

Checkout Recovery продолжает улучшаться и дорабатываться. Продавцы теперь могут вручную отправлять email для Checkout Recovery, чтобы не ждать запланированной автоотправки.

К email-письму Checkout Recovery добавлена опция клиентской отписки.

Обновления блочного редактора email

В блочном редакторе email появилась возможность встраивания Vimeo, TikTok и Dailymotion. Ролики выводятся в виде кликабельных миниатюр с кнопками воспроизведения.

Улучшения для разработчиков и обновления совместимости

Product Editor будет удален

Из ядра WooCommerce 11.0 будет окончательно удален редактор товаров Product Editor, включая пакет @woocommerce/product-editor, его флаг функций, маршруты, специфичные для редактора, а также связанные точки расширения. Затронутые магазины должны вернуться к классическому редактору, а разработчики расширений должны провести аудит своего кода на наличие пакетов, флагов функций, блоков, слотов, заполнителей, маршрутов и экспериментальных API для Product Editor.

Напоминание: товары и данные о товарах останутся без изменений. Будет удален только экспериментальный экран редактирования в админ-панели.

Хуки валидации и форматирования телефонных номеров

В WooCommerce 11.0 добавлены два целевых хука для обработки телефонных номеров. woocommerce_validate_phone поддерживает кастомную валидацию для локальных форматов и альтернативных систем записи чисел, а woocommerce_format_phone_number позволяет расширениям кастомизировать отображение без изменения поведения валидации.

Также добавлен метод WC_Validation::is_phone_format() для проверки формата независимо от страны. Это обеспечивает более четкое разделение между форматированием и валидацией для расширений, поддерживающих локальные форматы телефонных номеров.

Другие примечания по совместимости

  • Теперь значение по умолчанию для ReserveStock::reserve_stock_for_order() составляет 60 минут, если оно не передано явно.
  • Вместо кастомного @woocommerce/dependency-group теперь используется стандартное правило import/order в рекомендуемом конфиге @woocommerce/eslint-plugin.
  • Удален атрибут Resolution для блока Product Image. Вместо него блок теперь всегда загружает large-миниатюру.
  • Использование get_queried_object() на странице Shop вернет объект WP_Post страницы Shop.
  • Таксономия product_shipping_class станет приватной в WooCommerce 11.0.
  • Новый интерфейс Settings UI.

Источник: https://developer.woocommerce.com

Дмитрий/ автор статьи
CCO, Senior SEM/PPC Specialist, WordPress-энтузиаст, переводчик с английского и немецкого. Серый кардинал русскоязычного WP-комьюнити.
Блог про WordPress
Добавить комментарий

Получать новые комментарии по электронной почте.