Введите часть искомого слова, названия или фразы...
↑ ↓
  1. Новые темы озаглавленные с маленькой буквы - удаляются без предупреждения!
  2. Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Почта России и EMS для WooCommerce плюс наложенный платеж.

Тема в разделе "Плагины для WooCommerce", создана пользователем artemkomarov, 3 авг 2016.

  1. artemkomarov

    artemkomarov Местный

    Сообщения:
    423
    Симпатии:
    183
    Баллы:
    43
    Скиньте скриншоты

    1. основных настроек woocommerce
    2. зон доставок
    3. и сам настроенный метод
     
  2. ss2o

    ss2o

    Сообщения:
    9
    Симпатии:
    0
    Баллы:
    1
  3. artemkomarov

    artemkomarov Местный

    Сообщения:
    423
    Симпатии:
    183
    Баллы:
    43
    как по мне все ок. Если проблема не в адресе покупателя то
    смотрите логи своего сервера на наличие ошибок
    ищите свой ip по статистике или черном списке
    http://postcalc.ru/mystat.html
    http://postcalc.ru/blacklist.php
     
  4. ss2o

    ss2o

    Сообщения:
    9
    Симпатии:
    0
    Баллы:
    1
    В черном списке нет. Буду искать дальше.
    Спасибо за то что уделили время.
     
  5. dimson

    dimson

    Сообщения:
    8
    Симпатии:
    2
    Баллы:
    3
    Всем добрый вечер! Столкнулся с такой проблемой от которой постоянно узнаю от клиентов:
    Когда клиенты заходят на страницу оформления заказа, они хотят выбрать метод доставки Почта России, но они его не видят (поля не заполнены) и естественно не совершают покупку.
    Пытался найти какой-либо хук на автоматический ввод любого значения, например 123456 в поле postcode, для того, чтобы Почта России сразу же активировалась, но найти к сожалению не удалось.
    gt-ip-region based тоже не получается использовать, он "гасит" поле Область\регион, а через него работает плагин СДЭК.
    Кто нибудь знает как решить данную проблему, как автоматически вставить любое значение в поле Почтовый код?

    И еще один момент, наверняка многим хотелось бы скрывать не нужные поля при выборе разных методов доставки.
    Например, вы выбрали бесплатную доставку по своему городу, соответственно поле Почтоый код нужно скрыть при данном методе доставки. Чем меньше полей - тем лучше. А для Почты России наоборот показать.
    Есть вот такой вот код, но почему-то он у меня не работает, а должен.
    Артем, Вы как профессиональный программист, можете посмотреть на код?

    function premove_billing_checkout_fields($fields) {
    $shipping_method ='local_pickup'; //value метода Бесплатная доставка при котором должен скрываться Почтовый код
    global $woocommerce;
    $chosen_methods = WC()->session->get( 'chosen_shipping_methods' );
    $chosen_shipping = $chosen_methods[0];

    if( $chosen_shipping == $shipping_method ) {
    unset($fields['billing']['billing_postcode']);
    }
    return $fields;
    }
    add_filter('woocommerce_checkout_fields', 'premove_billing_checkout_fields', 990 );
     
  6. tavarysh

    tavarysh

    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    http://test.johnatvo.bget.ru Вот здесь. Действительно, виртуальные товары не считает, но вроде как и раньше не считало, разве нет?
    Скачиваемые товары когда добавляешь в корзину отдельно, считает 47 рублей. Когда добавляешься наряду с обычными товарами, доставку считает только за обычные.
     
  7. artemkomarov

    artemkomarov Местный

    Сообщения:
    423
    Симпатии:
    183
    Баллы:
    43
    нет
    woocommerce даже не начнет расчет доставки если в корзине одни виртуальные товары так что ошибка где то у вас в админке
     
  8. tavarysh

    tavarysh

    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    у меня вариативные товары - бумажные и электронные книги. Я создаю один товар с атрибутом Вид, поэтому woocommerce не считает их просто обычными скачиваемыми товарами, а одним из видов. Скачиваемый не равно виртуальный.
     
  9. artemkomarov

    artemkomarov Местный

    Сообщения:
    423
    Симпатии:
    183
    Баллы:
    43
    Я не програмист, я просто балуюсь)
    на основе каких данных вы узнаете местность покупателя чтобы предложить ему доставку по городу?
    на основе каких даных методы доставки будут отображаться?

    все шаблонные интернет магазины работают по такому принципу. если хотите как то решить описанную проблему сделайте пошаговое оформление заказа.
     
    • Полезно Полезно x 1
  10. artemkomarov

    artemkomarov Местный

    Сообщения:
    423
    Симпатии:
    183
    Баллы:
    43
    Скачиваемые товары идут наряду с физическими. То есть покупаете холодильник а вот инструкция к нему может быть скачена по этой ссылке. Покупаете печатное издание, а вот вам бонус в виде электронной версии этой книги. То есть скачиваемый товар идет наряду с физическим. В вашем же случае "Вид" означает физическое состояние и при выборе электронное имеется ввиду виртуальный товар так что галочка виртуальный товар должна быть поставлена в вариации.
     
    • Нравится Нравится x 1
    • Согласен Согласен x 1
    • Полезно Полезно x 1
  11. dimson

    dimson

    Сообщения:
    8
    Симпатии:
    2
    Баллы:
    3
    Очень хорошо у Вас получается "баловаться")
    Как показывает сугубо наша практика, Почтой России можно доставить любому клиенту, а вот СДЭК и пикпоинт, подключенный у нас доступен не для всех.
    Неделю назад отправляли заказ в деревню близ Украины, туда только Почта России доставляет, а ближайшая точка доставки СДЭК в 130км. Этот клиент звонил и спрашивал: "Почему я не могу заказать Почтой России, ведь у вас написано что она есть". Я ему ответил, что нужно заполнить все поля и только после этого, появится возможность".
    А ведь сколько клиентов "уходят" из-за этого, что не могут выбрать метод доставки Почта России, исходя из вебвизора яндекс метрики.
    Цена Почты России в конце заполнения всех адресов обновится до нужной, но вот только как же это сделать...
    На взгляд нашей компании это очень важный фактор и с точки зрения большей конверсии и сточки зрения клиента, что он сразу же видет и может выбрать Почту России.
    Похоже придется писать большими красными буквами на странице оформления заказа:
    "Уважаемые клиенты, для того, чтобы выбрать способ доставки Почта России, заполните все поля включая индекс"
    Колхозно будет выглядеть тогда, но что поделать...

    Мы чуть "под урезали" Ваш плагин gt-ip-based, удалили из js файла region, т.к. он блокировал появление городов плагина СДЭК. Сейчас на зеркале сайта при очищенных куки, стоит ввести хоть одну цифру в поле Почтовый индекс ( абсолютно не заполняя все остальные поля) сразу же появляется метод доставки Почта России и цена 40 рублей. Цена в целом в начале не важна, важен фактор выбора Почты Доставки без введения значений в поля (опять таки, исхожу из статистики наших покупок и удобства для клиентов)
     
  12. dimson

    dimson

    Сообщения:
    8
    Симпатии:
    2
    Баллы:
    3
    Пошаговое оформление заказа было бы замечательно, только:
    1) Первым пунктом нужно как то сделать появление методов доставки: Почта России \ СДЭК \ PickPoint \ Бесплатная доставка по городу
    2) Ввод необходимых полей отталкиваясь от метода доставки:
    • Для СДЭК: имя, фамилия, емаил, телефон, город ( область), адрес (если заказ курьера)
    • Для Почты России:имя, фамилия, емаил, телефон, город(область), адрес, почтовый индекс
    • Для Пикпоинт: имя, фамилия, емаил, телефон.
    • Для Бесплатной доставки по городу: Имя, фамилия, емаил, телефон, адрес.
    3) Способы оплаты
    4) Покупка

    Именно в такой последовательности в идеале все должно быть, только таких плагинов увы нету
     
  13. dimson

    dimson

    Сообщения:
    8
    Симпатии:
    2
    Баллы:
    3
    Но не смотря на это, мы очень рады, что есть такой человек, как Вы - Артем. Что сделали очень хороший плагин.
    А можем ли мы с Вами по общаться, реально ли сделать то, что я указал Выше? ( за указанное Вами вознаграждение )
     
  14. artemkomarov

    artemkomarov Местный

    Сообщения:
    423
    Симпатии:
    183
    Баллы:
    43
    Закажите на бирже фрилансеров. Такой плагин по стоимости немного выйдет.

    Извините я не занимаюсь фрилансом.

    спасибо)
     
  15. dimson

    dimson

    Сообщения:
    8
    Симпатии:
    2
    Баллы:
    3
    Код работает!
    Использовал не совсем верную функцию вызова.
    Правда пока сыровато.
    Скрывает поля в зависимости от выбранного метода доставки ТОЛЬКО при обновлении страницы, нужно как-то сделать через Ajax.
    Хрен знает как правда.... :(

    function premove_billing_checkout_fields($fields) {
    global $woocommerce;
    $chosen_methods = WC()->session->get( 'chosen_shipping_methods' );
    $chosen_shipping = $chosen_methods[0];

    if( $chosen_shipping === 'local_pickup:20' ) {
    unset($fields['billing']['billing_postcode']);
    unset($fields['billing']['billing_state']);
    unset($fields['billing']['billing_country']);
    }
    if( $chosen_shipping === 'wc_custom_shipping_pickpoint' ) {
    unset($fields['billing']['billing_postcode']);
    unset($fields['billing']['billing_address_1']);
    unset($fields['billing']['billing_state']);
    }
    return $fields;
    }
    add_filter('woocommerce_checkout_fields', 'premove_billing_checkout_fields', 990 );
     
  16. игорь артемьев

    игорь артемьев

    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    помогите решить проблему как убрать надпись Honda VFR 1200 DCT ABS
    с этого сайта http://akibo-corporation.ru.xsph.ru/каталог/
     
    • Не нравится Не нравится x 2
  17. tuxfighter

    tuxfighter Местный

    Сообщения:
    1.503
    Симпатии:
    243
    Баллы:
    63
    при чем тут Почта России???
    в настройках вашей темы смотрите.
     
    • Безграмотный Безграмотный x 1
  18. dimson

    dimson

    Сообщения:
    8
    Симпатии:
    2
    Баллы:
    3
    Приветствую всех! Для того, чтобы Почта России сразу же появлялась для "нового клиента" как метод доставки, нужно принудительно вписать в поле "Почтовый индекс" любое число. Сделать это можно следующим способом: Заходим на фтп сервер в папку plugins/woocommerce/includes и редактируем файл class-wc-checkout.php. В самом низу находим следующим код:

    public function get_value( $input ) {
    if ( ! empty( $_POST[ $input ] ) ) {
    return wc_clean( $_POST[ $input ] );
    ......//спускаемся ниже, нас интересует
    switch ( $input ) {
    case 'billing_country' :
    return apply_filters( 'default_checkout_country', WC()->customer->get_country() ? WC()->customer->get_country() : '', 'billing' );
    case 'billing_state' :
    return apply_filters( 'default_checkout_state', WC()->customer->get_state() ? WC()->customer->get_state() : '', 'billing' );
    case 'billing_postcode' :
    return apply_filters( 'default_checkout_postcode', WC()->customer->get_postcode() ? WC()->customer->get_postcode() : '123456', 'billing' );
    ..............
    }
    }
    }

    Вместо пустых кавычек в case 'billing_postcode', вставьте любое значение.
    После этого залейте данный файл обратно на сервер.
    Вуаля, теперь новый клиент который без регистрации захотел купить Ваш товар сразу же увидит Почту России, приобретет у Вас товар и не скажет Вам:
    "Я зашел на страницу оформлению заказа, но не могу найти метод доставки Почта России, поэтому я ушел к другому интернет-магазину".
    Для нашей компании решение данной проблемы стояло очень остро, может кому-то пригодится данное решение.

    У нас в России очень плохо развита логистическая составляющая, тем более для интернет-магазинов, поэтому передаем огромную благодарность Артему Комарову за замечательный плагин!
     
    • Нравится Нравится x 1
  19. tuxfighter

    tuxfighter Местный

    Сообщения:
    1.503
    Симпатии:
    243
    Баллы:
    63
    и все это работает только до первого обновления ВУУ
    пользуйтесь дочерними темами!
     
  20. dimson

    dimson

    Сообщения:
    8
    Симпатии:
    2
    Баллы:
    3
    При обновлении woocommerce все слетит скорее всего, можете попробовать добавить следующий код в файл function.php вашей темы. У одних данный код работает, у других нет. Если этот не заработает, то целесообразнее исправить в файле class-wc-checkout.php

    add_filter( 'woocommerce_checkout_fields' , 'default_values_checkout_fields' );
    function default_values_checkout_fields( $fields ) {
    $fields['billing']['billing_postcode']['default'] = '123456';
    return $fields;
    }

    Если у Вас массив, то нужно добавить следующую строчку выделенную красным:

    function caf_woocommerce_checkout_fields( $checkout_fields = array() ) {
    $checkout_fields['billing']['billing_postcode'] = array(
    'type' => 'text',
    'maxlength' => '6',
    'label' => __('Почтовый код'),
    'default' => '123456',
    );

    return $checkout_fields;
    }
    add_filter( 'woocommerce_checkout_fields', 'caf_woocommerce_checkout_fields' );
     
    • Нравится Нравится x 1