Вход в аккаунт

Войдите в свой аккаунт WooDev

или

Войти через сервис

Корзина

Корзина пуста

Перейти в каталог
Плагины Woodev

Если способ доставки не показывается

Publisher Обновлено 07.11.2026 1 мин чтения

Эта часть помогает найти причину, если покупатель не видит способ «Стоимость за расстояние» или видит не ту цену. В конце — частые вопросы и короткий раздел для разработчиков.

Как быстро узнать причину: «Логирование» #

Плагин знает, почему скрыл способ доставки. Причина записывается в журнал; в классическом сообщении об отсутствии доставки покупателю могут показываться отдельные пояснения из таблицы цен или перенесённых правил. Чтобы причину увидели вы, включите «Логирование»:

  1. Откройте «Woodev → Настройки», вкладку «Расчёт за расстояние», подвкладку «Дополнительно».
  2. Включите «Логирование» и нажмите «Сохранить».
Подвкладка «Дополнительно»: переключатель «Логирование» с пояснением «Не включайте без необходимости: в лог записывается много данных»
Включайте «Логирование», когда ищете причину, и выключайте после проверки.

Теперь причина видна в двух местах.

На странице оформления заказа. Войдите в админку как администратор или менеджер магазина и откройте оформление заказа на сайте. Под блоком доставки появится красная строка, например: «Скрыт: «Курьер» — Не создано ни одного склада». Покупатели эту строку не видят: она только для тех, кто управляет магазином, и только пока включено «Логирование».

В журнале. Откройте «WooCommerce → Статус → Журналы» и выберите файл, название которого начинается с «range_rate» и заканчивается датой. Строка о скрытом способе выглядит так: The shipping method "Курьер" is hidden (no_warehouse): Не создано ни одного склада. Начало строки на английском, причина — по-русски, в конце строки.

Журнал «range_rate» в «WooCommerce → Статус → Журналы»: строки «The shipping method … is hidden (address_not_found): Адрес покупателя не найден» и «Distance by straight line instead of …»
В журнале видно, почему способ скрыт и когда расстояние посчитано по прямой.

Когда причина найдена, выключите «Логирование»: в журнал пишется много данных.

Все причины, по которым способ скрыт #

Причины перечислены в том порядке, в каком плагин их проверяет. В кавычках — текст причины в журнале и в красной строке.

ПричинаЧто сделать
Способ выключен, не добавлен в зону или адрес покупателя не попадает в эту зонуПроверьте зону и способ в «WooCommerce → Настройки → Доставка». Если адрес не подходит ни под одну зону, WooCommerce вообще не спрашивает плагин
В адресе нет страныПлагин считает доставку, только когда страна указана. Проверьте, что поле «Страна» есть на оформлении заказа или в магазине одна страна продажи
«лицензия плагина не действует. Введите или продлите ключ на странице лицензий: …»Введите или продлите ключ в «Woodev → Лицензии»
Сумма заказа вне ограничений, заданных в способе, например «сумма заказа ниже минимума метода (от …)»Это стандартные поля «Минимальная сумма заказа» и «Максимальная сумма заказа» способа. Поменяйте их или очистите
«Настройки метода из версии 1 ещё не перенесены: откройте админ-панель, плагин перенесёт их сам»Откройте любую страницу админки. Перенос требует действующей лицензии — см. «Переход с версии 1.x»
«Не создано ни одного склада»Добавьте склад: «Woodev → Настройки» → «Расчёт за расстояние» → «Склады»
«Не заданы цены»Заполните хотя бы одну строку таблицы «Цены по расстоянию» в способе
«Не указан ключ DaData»Вставьте ключ в «Woodev → Настройки» → «Доставка» → «Локация» → «Токен API DaData»
«DaData временно недоступна»DaData не ответила или не приняла ключ: исчерпан дневной лимит, ключ неверный или почта в DaData не подтверждена. Проверьте кабинет DaData
«Адрес покупателя не найден»DaData не нашла такой адрес. Обычно это адрес, набранный вручную с ошибкой. Попросите покупателя выбрать адрес из подсказок
«Адрес ближе первой строки таблицы цен»В первой строке «От» больше 0, а покупатель ближе. Если хотите возить и рядом, поставьте «От» 0
«Адрес дальше последней строки таблицы цен»На классическом оформлении, когда других способов нет, покупатель видит «К сожалению, адрес находится за пределами зоны доставки». Если возите дальше, добавьте строку или оставьте «До» последней строки пустым
«Для этого расстояния выбрано «Не доставляем»»Пояснение для покупателя то же, что в предыдущей строке. Снимите «Не доставлять», если возите на это расстояние
«Вес заказа больше допустимого»На классическом оформлении, когда других способов нет, покупатель видит «К сожалению, общий вес выбранных вами товаров превышает тот, который мы можем отправить.» Увеличьте «Не доставлять тяжелее» или очистите его
«Правила зависят от времени в пути, а сервис расчёта расстояния недоступен»Подключите сервис карт, проверьте его кнопкой «Проверить» на подвкладке «Сервисы» и выберите его в способе: по прямой время в пути не считается
«Сработало правило «Скрыть доставку»»Найдите среди перенесённых правил то, у которого включено «Скрыть доставку», и проверьте его условия. Если способ нужно показывать, измените или удалите это правило
«Ни одно правило не подошло»Проверьте условия перенесённых правил: адрес, вес, сумма или количество товаров не подходят ни под одно из них
«не удалось рассчитать стоимость доставки. Попробуйте позже или проверьте настройки службы доставки.»Непредвиденный сбой при расчёте. Повторите позже; если не проходит — пришлите строку из журнала в поддержку

Ещё три случая, когда способа нет, но это не ошибка:

  • Корзина, адрес ещё не введён. Пока покупатель не указал ни города, ни улицы, цены нет: плагин не тратит запросы впустую.
  • Корзина, включено «Не показывать на странице корзины». Способ появится на оформлении заказа.
  • Перенесённые из 1.x правила зависят от времени в пути, а расстояние считается по прямой. По прямой время не считается. Подключите сервис карт и выберите его в способе.

Цена есть, но «примерная» #

Пока покупатель не указал номер дома, плагин знает адрес только до улицы или населённого пункта и считает от этой точки. Тогда под способом стоит пометка «Стоимость указана примерная, для точного расчёта укажите ваш точный адрес». Когда DaData определит координаты адреса до дома, цена пересчитается и пометка исчезнет. Иногда адрес остаётся примерным и при указанном номере дома: тогда пометка сохраняется, а при включённом «Требовать точный адрес» оформить заказ этим способом нельзя.

  • В корзине, где обычно есть только город, цена почти всегда примерная.
  • Где показывать пометку, вы выбираете в поле «Примерная стоимость» способа: под способом, под общим списком или нигде.
  • Чтобы не принимать заказы без номера дома, включите «Требовать точный адрес». Тогда покупатель видит «Укажите точный адрес доставки с номером дома — от него зависит стоимость доставки.», и заказ с примерной ценой не оформится.
  • Если адрес склада выбран без номера дома, все расстояния от него тоже приблизительные: плагин предупреждает об этом при сохранении склада.

В заказе в строке «Точность» записано «точный» или «примерный».

Цена не та, что ожидалась #

  • Проверьте расстояние в заказе — строка «Расстояние». Затем найдите строку таблицы и посчитайте: «Стоимость» + «+ за км» × всё расстояние. Частая ошибка — ждать, что «+ за км» умножается только на километры сверх начала строки.
  • Проверьте округление. При «Округлять до целого км вверх» 10,1 км считаются как 11 км.
  • Проверьте строку «Сервис» в заказе. Если там «По прямой (резерв: … недоступен)», сервис карт в этот момент не ответил, и расстояние посчитано по прямой с коэффициентом дороги. Что делать, рассказано в части «Сервисы расчёта расстояния и ключи».
  • Проверьте коэффициент дороги («коэф.» на подвкладке «Сервисы»), если считаете по прямой.
  • Проверьте стандартные правила цены — наценку, округление, минимальную и максимальную стоимость доставки. Они меняют цену после таблицы.
  • Проверьте вес товаров, если включена доплата за вес.

Частые вопросы #

Что будет, если сервис карт не ответит? #

Расстояние посчитается по прямой с вашим коэффициентом дороги. Доставка появится, если для этого расстояния и веса есть подходящая цена; перенесённые правила, которым нужно время в пути, без ответа сервиса могут скрыть способ доставки. То же произойдёт, если исчерпан «Лимит в сутки». В заказе в строке «Сервис» будет «По прямой (резерв: …)». Если сервис не принял ключ или отключён, а способы им пользуются, в админке появится красное уведомление.

Как не получить неожиданный счёт от сервиса карт? #

Задайте «Лимит в сутки» в строке сервиса на подвкладке «Сервисы». После него новые запросы к сервису до конца суток не отправляются: сохранённые маршруты используются, пока не истечёт срок, а для остальных адресов расстояние считается по прямой. Кроме того, плагин помнит уже посчитанные маршруты и при нескольких складах строит маршрут только от одного.

Как задать разные цены для разных районов или городов? #

Сделайте отдельные зоны доставки и в каждой — свой способ «Стоимость за расстояние» со своей таблицей, складом и сервисом.

Почему в способе доставки нет нужного сервиса? #

В списке «Расчёт расстояния» только «По прямой» и подключённые сервисы. Вставьте ключ в строку сервиса на подвкладке «Сервисы», нажмите «Проверить», затем «Сохранить».

Покупатель не может выбрать свой город. Почему? #

Скорее всего, включён режим «Доставка в городе». Он оставляет в поле «Населённый пункт» только ваши места — для покупателей из стран вашего списка и для всех служб доставки магазина. Если возите и в этот город, добавьте его в список. Если режим не нужен, выключите «Доставка в пределах города». Подробнее — в части «Доставка в городе».

Включил «Доставку в городе», а поле у покупателя осталось обычным #

Проверьте лицензию: без неё режим не работает. Проверьте, что в списке есть место в стране покупателя и что эта страна есть в «Доставке в страны». Если на сайте блочное оформление заказа и удалён ключ DaData, поле остаётся текстовым — верните ключ. Причину плагин пишет вверху подвкладки «Доставка в городе».

Можно ли возить с разных складов по разным ценам? #

Да. Сделайте два способа доставки, в каждом выберите свой склад и заполните свою таблицу. Если цена одна, а склад должен выбираться сам, поставьте в способе «Ближайший к покупателю».

Для разработчиков #

Плагин сохранил хуки версии 1.x с теми же названиями и аргументами:

  • woocommerce_shipping_range_rate_is_available — доступность способа;
  • woocommerce_shipping_range_rate_get_customer_address_string — части адреса покупателя для поиска на карте;
  • woocommerce_range_rate_shipping_calculated_distance ( $km, $metres ) — расстояние после округления, до поиска цены;
  • woocommerce_range_rate_shipping_label_suffix ( $suffix, $km, $package ) — текст в скобках после названия способа;
  • woocommerce_range_rate_shipping_rule_cost_calculation и фильтры отдельных условий — для правил, перенесённых из 1.x.

Новые хуки версии 2:

  • woodev_range_rate_warehouse_for_package ( $warehouse, $package, $destination ) — склад, от которого считается расстояние;
  • woodev_range_rate_distance_result ( $result, $provider_id ) — посчитанное расстояние;
  • woodev_range_rate_grid_cost ( $cost, $km, $package ) — цена из таблицы с доплатой за вес, до стандартных правил цены;
  • woodev_range_rate_distance_fallback ( $provider_id, $reason ) — действие: расстояние посчитано по прямой вместо сервиса;
  • woodev_range_rate_distance_providers — подключить свой сервис расчёта расстояния;
  • woodev_range_rate_ors_base_url — адрес своего сервера OpenRouteService.

Ключи сервисов можно задать константами в wp-config.php — список в части «Сервисы расчёта расстояния и ключи».

Остались вопросы? #

Напишите в поддержку — она входит в лицензию. Если пишете о скрытом способе доставки, приложите строку из журнала: так мы ответим быстрее.

Оцените документ
Поделиться:

Похожие статьи