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

Изменение итоговой цены или как искать hook woocommerce

Тема в разделе "Вопросы, советы и доработки.", создана пользователем Vicos, 31 авг 2016.

Метки:
  1. Vicos

    Vicos

    Сообщения:
    34
    Симпатии:
    5
    Баллы:
    8
    Здравствуйте! Помогите разобраться с такой проблемой, как искать hook'и для изменения и модификации фукционала в woocommerce?
    К примеру, требуется изменить итоговую стоимость в зависимости от суммы, проще говоря сделать скидку если товара в корзине больше чем на 10 000.
    Шарю по файлам шаблона, встречаю куки типа woocommerce_before_cart_totals, создаю функцию:
    Код:
    //add_action('woocommerce_before_cart_totals', 'test_func');
    function test_func ($args)
    {
        var_dump(func_get_args());
        var_dump(func_num_args());
        var_dump($args);
    }
    
    Но всё что не перебираю пустое. Как прицепиться к тому что приходит в эти хуки?
    Шарю весь woocommerce на наличие этого хука находится только в шаблоне. Исходный код функции так же не могу найти. На GitHub так же отображается только место в шаблоне.
    Шарю в https://docs.woocommerce.com/wc-apidocs/hook-docs.html но по каким принципам искать не пойму.
     
  2. Vicos

    Vicos

    Сообщения:
    34
    Симпатии:
    5
    Баллы:
    8
  3. tuxfighter

    tuxfighter Местный

    Сообщения:
    690
    Симпатии:
    106
    Баллы:
    43
    а почему просто уже готовым плагином не воспользоваться?
     
  4. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    Вы немного не с той стороны заходите.

    1. Можно сидеть и достаточно долго разбирать плагин WooCommerce класс за классом , метод за методом.
    В этом случае Вы досконально можете разобраться в логике работы и сделать для себя мини-методичку.
    Но сколько на это потратите времени .... ?

    2. Можно сформулировать вопрос на анг. языке для Google. Вам покажутся решения (код или готовые плагины).
    Вашей задачей останется разобраться с ними и использовать.

    Оба способа имеют право на жизнь.
    Но, если это не готовый плагин, то читать исходники придется в любом случае.
     
    • Нравится Нравится x 2
  5. Vicos

    Vicos

    Сообщения:
    34
    Симпатии:
    5
    Баллы:
    8
    Спасибо! Пошёл по первому пути. Использую в функции
    Код:
    global $woocommerce
    // И даллее шаря по документакции, типа этого.
    $cart_subtotal = $woocommerce->cart->subtotal;
    var_dump($cart_subtotal);
    Познакомился с общими классами и на https://docs.woocommerce.com/wc-apidocs/class-WC_Cart.html шарю и смотрю исходники.
    На данный момент возникает вопрос как устанавливать значения, элементарным:
    Код:
    $discount = $woocommerce->cart->discount_cart = 10;
    Вроде и встаёт значение, но применяется ли оно в итоге?
     
  6. Vicos

    Vicos

    Сообщения:
    34
    Симпатии:
    5
    Баллы:
    8
    1) Не на всё есть готовые плагины, так как задачи возникают не обычные.
    2) Для развития будет лучшим вариантом понять этот WooCommerce изнутри, тем самым упросить себе работу в дальнейшем.
     
    • Согласен Согласен x 1
  7. searchingman

    searchingman Местный

    Сообщения:
    1.634
    Симпатии:
    553
    Баллы:
    113
    Для понимания какие хуки используются на конкретной странице и с каким приоритетом советую плагин Query Monitor. Кроме информации по хукам он дает полезную информацию по запросам (количество, время выполнения). Вообщем, полезно для отладки.
     
    • Нравится Нравится x 1
  8. Vicos

    Vicos

    Сообщения:
    34
    Симпатии:
    5
    Баллы:
    8
    Спасибо! Хорошая вещь)