Git Product home page Git Product logo

Comments (23)

kalbac avatar kalbac commented on August 14, 2024 3

Проблему со значением state_id которое цепляется только со второго раз, решил. В следующем релизе этот баг будет устранён, что касается woocommerce_edostavka_X_settings то версия php тут ни как не влияет. X - это айдишник экземпляра вызываемого класса доставки. В вашем @me-2-you случае 4 означает что у вас как минимум 4 экземпляра класса edostavka. Тоже можно отнести к багу, в следующем обновлении исправлю.

from wc-edostavka.

not4u avatar not4u commented on August 14, 2024
  1. Поставьте Стандартное местоположение клиента - Город магазина
  2. Поставтье Saphali russian wocommerce и в его настройках отключите обязательное заполнения поля адрес

from wc-edostavka.

kalbac avatar kalbac commented on August 14, 2024

Скорей всего у @mikekosulin как раз и установлен плагин Saphali, который перезаписывает поля формы оформления заказа. С "чистым" wooсommerce такой проблемы нету.

from wc-edostavka.

mikekosulin avatar mikekosulin commented on August 14, 2024

WP 4.6.1
WC 2.6.7

Autoptimize от Frank Goossens (futtta) – 2.1.0
Nginx Helper от rtCamp – 1.9.8
Redis Object Cache от Till Krüss – 1.3.4
eDostavka Shipping Method от Мартиросов Максим – 1.3.7
WooCommerce Checkout Manager от Visser Labs – 4.0.9
WooCommerce Order Status & Actions Manager от Actuality Extensions – 2.0.9

Никакого Saphali нет у меня.

UPD:
отключил стандартное местоположение.
не помогло, теперь не определяется страна сама даже.

при чекауте ввожу город, уходит запрос через jsonp.php и прилетает ответ.
Проблема в том, что калькуляция не отображается.
при повторном вводе и выборе города всё уже отлично работает.

с отключенным WooCommerce Checkout Manager от Visser Labs – 4.0.9 тоже пробовал
кеширование на странице чекаута отключено, склейка js с другими и минификация плагина edostavka не производится.

from wc-edostavka.

not4u avatar not4u commented on August 14, 2024

Я победил этот глюк установкой SAPHALI WOOCOMMERCE RUSSIAN.
Через него создал дубль поля адрес. Стандартный адрес убрал и отключил обязательность его заполнения.

Проблема необновления условий доставки случается из за того что выбираете ПВЗ. Модуль скрывает поле адрес. А обновление произойдет только когда введете что то в поле адрес. Соответсвенно модуль данные получает а сам вукоммерц их не спрашивает у wc_edostavka так как ждет ввода адреса в соответсвующее поле

from wc-edostavka.

mikekosulin avatar mikekosulin commented on August 14, 2024

нужен просто класс update_totals_on_change
но почему-то работает через раз

from wc-edostavka.

me-2-you avatar me-2-you commented on August 14, 2024

@not4u при таком варианте - Карта ПВЗ обновляется? Можете дать ссылку на живой пример?
У меня после ввода нового города нужно переключать способы доставки, чтобы карта обновилась...

from wc-edostavka.

mikekosulin avatar mikekosulin commented on August 14, 2024

Добавляю через js класс update_totals_on_change , не помогает, всё равно расчет не происходит часто. Все плагины чекаута отключены
Поле адрес не скрыто(кст скрытие населенного пункта не работает)

from wc-edostavka.

kalbac avatar kalbac commented on August 14, 2024

@mikekosulin Если поле "населённый пункт" не скрывается, это уже свидетельствует о том, что где то в коде (в плагинах или теме) идёт перезапись полей woocommerce_checkout_fields

from wc-edostavka.

me-2-you avatar me-2-you commented on August 14, 2024

@kalbac, я не понимаю как плагин должен работать... Имеем чистый wp + woocommerce + wp-edostavka

Настройка WooCommerce

Основные настройки

  • Базовое местоположение - Россия
  • Продавать в определённые страны - Россия
  • Доставлять в определённые страны - Россия
    Стандартное местоположение клиента - Адрес Магазина (Кстати он где-то указывается?)

Доставка - Зона - Россия - Методы доставки - Самовывоз, Бесплатная доставка, eДоставка
Самовывоз по умолчанию.

Параметры доставки

Расчеты - выключены
Назначение доставки - Принудительная доставка по платёжному адресу клиента

eДоставка, настройки по умолчанию
Методы доставки - Посылка склад-склад, inpost склад-склад

Форма оформления и заказа

Для сравнения

Стандартная форма woocommerce

Имя, Фамилия
Название компании
Email, Телефон
Страна
Адрес, два поля:

  • Улица,
  • Подъезд, этаж
    Населенный пункт
    Область/Регион, Почтовый индекс

Форма явно не логична к заполнению..

При активации eДоставка

Поля в форме оформления, следующие.. и их расположение мягко говоря тоже вносит какую-то суматоху для заказчика...

Имя, Фамилия
Название компании
Email, Телефон
Страна
Подъезд, этаж (без лейбла вверху, что это адрес) - ???
Населенный пункт
Область/Регион, Почтовый индекс
Адрес - Улица, и.т..д..

Форма по умолчанию

Ок, плагин активировался, но форма сразу вводит в ступор.. по моему логичнее она должна выглядеть так по умолчанию.

Хорошая форма

Имя, Фамилия
Название компании (можно скрыть, не особо нужно)
Email, Телефон
Страна (можно скрыть, если в одной стране торговля)
Область/Регион (во всю ширину)
Населенный пункт, Почтовый индекс
Адрес, два поля:

  • Улица,
  • Подъезд, этаж

Форма должна выглядеть так

Собственно это более логичный вариант, по сравнению со стандартной формой, так как заказчик не начинает тупить.. Все заполняется логично...

Имя, Фамилия
Email, Телефон
Область/Регион
Населенный пункт - заполняется автоматически после выбора Область/Регион


Пока я писал, про форму, плагин взял и заработал... Но про форму реально актуально... Есть какие варианты причесать форму к такому виду?

from wc-edostavka.

kalbac avatar kalbac commented on August 14, 2024

@me-2-you Варианты есть. Либо через плагин WC Saphali Light (не рекомендуется), либо если есть познания в программирование то кастомизируйте вывод полей checkout через фильтр woocommerce_checkout_fields Customizing checkout fields using actions and filters

from wc-edostavka.

me-2-you avatar me-2-you commented on August 14, 2024

@kalbac да, я так пробовал, но ломаю что-то... и поле Населенный пункт перестает заполнятся.. Кстати это же поле при отключении в админке на чистом wp + wc не исчезает.. Попробую позже еще...

Собственно, методом тыка, нашлось как срабатывает обновление ПВЗ =))

Не работает

По умолчанию доставка - Самовывоз

Заполняем поля, выбираем город в поле Область, Населенный пункт заполняется автоматом. Все, приехали =) Ничего не меняется...

Возможно может и появится - Доставка до ПВЗ, но не уверен (не помню).. Но в таком случае при появлении данного пункта, выборе метода с ПВЗ, но при не заполненном поле Адрес... смена города ПВЗ не будет обновлять данные и карту автоматически. Смена будет только при переключении методов доставки.

Работает

По умолчанию доставка - Самовывоз

Заполняем поля, как выше. Далее копируем город в поле Адрес и вуаля появляется Доставка до ПВЗ с ценой. При выборе Доставка до ПВЗ смена города работает на ура с обновлением карты и данных =) Ура, ура!

В модуле есть такой пункт, который и должен решать видимо эту проблему

  • Адрес не обязательный +- Нет

Но его смена ничего не меняет, поле остается в любом случае обязательным.

Решение

line 306 - wc_edostavka.php (address_1)

'required' => ( ! empty( $settings['disable_required_address'] ) && $settings['disable_required_address'] === 'yes' && self::is_stock_tariff() ) ? false : true,

заменить на

'required' => false

from wc-edostavka.

kalbac avatar kalbac commented on August 14, 2024

@me-2-you > 'required' => false - костыльный способ. Теперь у вас поле "Адрес" будет всегда не обязательным. К примеру пользователь выберет метод доставки до двери, и не введёт свой адрес, скрипт посчитает пустое поле валидным и пропустит пользователя на следующий этап.
Нужно понять почему $settings['disable_required_address'] не возвращает значение 'yes'.
Как минимум нужно оставить так 'required' => self::is_stock_tariff() === false

from wc-edostavka.

me-2-you avatar me-2-you commented on August 14, 2024

@kalbac, да так работает, спасибо.

Вот эти пару опций которые не работают, уже пару раз ставил с нуля, результат тот же.

  • Адрес не обязательный
  • Скрыть стандартное поле ввода "Населенный пункт"

Может кто еще проверит...

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

from wc-edostavka.

mikekosulin avatar mikekosulin commented on August 14, 2024

Так как решили проблему автозаполнения Населенного пункта?
У меня не заполняется само и не скрывается из настроек(но при этом скрывать хуком можно, но это не то, что хотелось бы).
Подсчет так и не работает пока не введен Населенный пункт и Область/Регион(либо 2-3 раза Область/Регион)

from wc-edostavka.

me-2-you avatar me-2-you commented on August 14, 2024

@mikekosulin, у меня заполнял Населенный пункт изначально, но не показывал eДоставку пока не заполнишь поле - Адрес.

А опции: Адрес не обязательный, Скрыть стандартное поле ввода "Населенный пункт", как я и писал ранее, не работают... Нужно ждать пока @kalbac посмотрит.

from wc-edostavka.

me-2-you avatar me-2-you commented on August 14, 2024

@kalbac, проверил, в базу настройки вносятся в разделе woocommerce_edostavka_4_settings, значения меняются yes / no для этих параметров...

Нубский вопрос... php7, 5.5 никак не связано с не взятием значений из базы? У меня php7 на хосте.

from wc-edostavka.

mikekosulin avatar mikekosulin commented on August 14, 2024

У меня тоже php7, с профайла и сессии city цепляет, а со state со второго раза обычно, если пусто было.

from wc-edostavka.

mikekosulin avatar mikekosulin commented on August 14, 2024

Кст фичреквест: возможность переименовывать способы доставки СДЭК отдельно
Потому что сейчас они отображаются либо как одинаковые(иногда даже суммы(что не круто), либо стандартными названиями сдэка что непонятно.

from wc-edostavka.

kalbac avatar kalbac commented on August 14, 2024

@mikekosulin Не совсем понял. Вы хотите что бы я добавил возможность переименовывать название каждого тарифа в отдельности или что?

from wc-edostavka.

mikekosulin avatar mikekosulin commented on August 14, 2024

@kalbac да, и возможность скрывать тарифы при одинаковых сроках доставки.(посылка и экспресс , например)

from wc-edostavka.

me-2-you avatar me-2-you commented on August 14, 2024

@kalbac

что касается woocommerce_edostavka_X_settings ... X - это айдишник экземпляра вызываемого класса доставки. В вашем @me-2-you случае 4 означает что у вас как минимум 4 экземпляра класса edostavka.

Может так и должно быть, может просто id проставляется, потому что ранее идут тоже _settings с ид 1,2,3

(648, 'woocommerce_local_pickup_1_settings', 'a:3:{s:5:\"title\";s:18:\"Самовывоз\";s:10:\"tax_status\";s:4:\"none\";s:4:\"cost\";s:0:\"\";}', 'yes'), (649, 'woocommerce_free_shipping_2_settings', 'a:3:{s:5:\"title\";s:37:\"Бесплатная доставка\";s:8:\"requires\";s:10:\"min_amount\";s:10:\"min_amount\";s:4:\"1000\";}', 'yes'), (650, 'woocommerce_flat_rate_3_settings', 'a:3:{s:5:\"title\";s:25:\"Единая ставка\";s:10:\"tax_status\";s:4:\"none\";s:4:\"cost\";s:3:\"500\";}', 'yes'), (651, 'woocommerce_edostavka_4_settings', ......

from wc-edostavka.

experk avatar experk commented on August 14, 2024

Доброго времени суток!
Подскажите, пожалуйста, есть ли какой-то воркэраунд к проблеме со State_id до выхода новой версии? Полдня бьюсь (очень я слабенький в программировании) чтобы хоть костыль какой поставить, но без толку

from wc-edostavka.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.