Ребята, помогите! Я уже почти в отчаянии. Впервый подгоняю сайт под woo и нужно сделать создание заказа. Это должно происходить не со страницы чекаут и поэтому код тоже пишу свой. Я, естественно, перед тем, как создавать полноценный код, чтобы это всё работало с кнопки решил сделать макет того, как создаю заказ, взял фул готовый код с сайта чела, у которого много всего по woo и wp: do_action('true_create_order'); function true_create_order() { // Начинаем с того, что создаём заказ, вполне логично $order = wc_create_order(); // Теперь давайте разберёмся с платёжным/адресом доставки покупателя $address = array( 'first_name' => 'Миша', 'last_name' => 'Рудрастых', 'company' => 'Студия Миши Рудрастых', 'email' => 'no-reply@misha.agency', 'phone' => '123-123-123', 'address_1' => 'Большой пр. ПС', 'address_2' => '100', 'city' => 'Санкт-Петербург', 'state' => 'Санкт-Петербург', 'postcode' => '191033', 'country' => 'RU' ); // Теперь можем задать этот адрес как платёжный $order->set_address( $address, 'billing' ); // И как адрес доставки $order->set_address( $address, 'shipping' ); // Неплохо бы добавить пару товаров в заказ $product_id = 27; // Допустим ID товара 37 $product_qty = 1; // 1 единица товара будет норм $order->add_product( wc_get_product( $product_id ), $product_qty ); // Установим платёжный метод, например пусть это будет оплата наличными при получении $payment_gateways = WC()->payment_gateways->payment_gateways(); if( ! empty( $payment_gateways[ 'cod' ] ) ) { $order->set_payment_method( $payment_gateways[ 'cod' ] ); } // Добавляем доставку $item = new WC_Order_Item_Shipping(); $item->set_method_title( "Доставочка" ); // название $item->set_method_id( "flat_rate:14" ); // указываем ID существующего способа доставки $item->set_total( 5 ); // стоимость доставки (необязательно) $order->add_item( $item ); // Пересчитываем заказ $order->calculate_totals(); // Устанавливаем нужный нам статус // $order->set_status( 'completed' ); // $order->save(); //$order->update_status( 'completed' ); // Можно добавить заметку в заказ $order->add_order_note( 'Заказ создан динамически.' ); } И этот код не работает. Если разкомментировать update_status, то код просто выбивает ошибка а так просто ничего не происходит. Возможно не в нужное время пытаюсь использовать эту функцию, хз короче, не работает. В эту же копилку могу отметить, что при переходе в корзину, аккаунт или чекаут, то открывается индекс. При этом адрес страницы пишется как мой_сайт/cart. Я перечитал уже тонну форумов и подобного, но адекватного объяснения не нашёл. Пытался создавать woocommerce.php и там всё прописывать, в functions.php, без толку. Нашёл, что нужно скопировать директорию woo в тему и переименовать её, но эффекта тоже 0. Даже в **** опенсервера лазил Может кто знает, в чём может быть проблема? Заранее спасибо
Забыл написать кстати Как только включаю стандартную тему по типу 2021 то всё начинает работать. И какбы я понимаю, что я скорее всего какой-то обязательный кусок кода для Woo не прописал просто, но какой... Да, сам по себе ву подключил