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

Получить ID только что размещенного заказа и занести в таблицу

Тема в разделе "Вопросы новичков", создана пользователем AndreyBerezov, 13 янв 2015.

  1. AndreyBerezov

    AndreyBerezov

    Сообщения:
    4
    Симпатии:
    1
    Баллы:
    3
    Добрый день, коллеги!

    Суть проблемы: реализовать платный конкурс на сайте.
    Человек "заказывает" участие в конкурсе и после размещения заказа у него открывается доступ к странице, где нужно внести данные по конкурсу (тема конкурсной работы, описание и кнопка загрузки файла работы на сайт).
    Решил все конкурсы выделить в отдельную таблицу БД, с привязкой к заказам (чтобы отследить оплаченные заказы через Робокассу и выставленные счета банковским переводом). Загвоздка в том, что никак не могу понять, как передать ID только что размещенного заказа в эту самую отдельную таблицу.

    Подскажите, пожалуйста, как можно получить этот самый ID заказа?

    С уважением, Andrey
     
  2. AndreyBerezov

    AndreyBerezov

    Сообщения:
    4
    Симпатии:
    1
    Баллы:
    3
    А знает кто-нибудь как сделать, чтобы пользователь мог купить товар только 1 раз под своей учетной записью?
    Не 1 экземпляр товара за 1 заказ, а всего иметь возможность сделать 1 заказ данного товара?
     
  3. AndreyBerezov

    AndreyBerezov

    Сообщения:
    4
    Симпатии:
    1
    Баллы:
    3
    Сам спросил - сам отвечу:

    Делаем с помощью хука 'woocommerce_thankyou'

    function my_woocommerce_thankyou($order_id) {
    global $wpdb;
    $table_products = $wpdb->prefix.competition;
    $user_id = get_current_user_id();
    $wpdb->insert
    (
    $table_products,
    array( 'user_id' => $user_id, 'competition_id' => $order_id),
    array( '%d', '%d')
    );
    }
    add_action('woocommerce_thankyou', 'my_woocommerce_thankyou');
     
    • Нравится Нравится x 1