• В своем woocommerce я сделал Два типа Заказов:
    – Просто заказ на Инвойс
    – Заказ на регистрацию Проекта (Тоже самое что и Заказ, но добавил дополнительные поля с помощью плагина “Checkout Field Editor for WooCommerce”, в которых клиент указывает данные заказчика)

    Если первое дополнительное поле заполнено (Название Проекта), тогда Заказ принимает статус “ПРОЕКТ”, если не заполнено – Инвойс.
    На просторах инета, нашел как добавить в Админку Wordpres эту колонку в таблицу заказов, и как сделать определение Типа Заказа.

    Для этого в functions.php прописал такой код:

    // 1.ДОБАВЛЯЕМ КОЛОНКУ В ТАБЛИЦУ ЗАКАЗОВ АДМИНКИ САЙТА
    add_filter( 'manage_edit-shop_order_columns', 'custom_shop_order_column',11);
    function custom_shop_order_column($columns)
    {
        $reordered_columns = array();
    
        foreach( $columns as $key => $column){
            $reordered_columns[$key] = $column;
            if( $key ==  'order_number' ){
                $reordered_columns['my-column1'] = __( 'Тип Заказа','theme_slug');
            }
        }
        return $reordered_columns;
    }
    
    // 2.ДОБАВЛЯЕМ ЗНАЧЕНИЕ В КОЛОНКУ ПРОЕКТЫ
    add_action( 'manage_shop_order_posts_custom_column' , 'custom_orders_list_column_content', 10, 2 );
    function custom_orders_list_column_content( $column, $post_id )
    {
        if( 'my-column1' == $column )
        {
            // Get custom post meta data 1
            $my_var_one = get_post_meta( $post_id, 'name_project_', true );
            if(!empty($my_var_one))
                echo 'ПРОЕКТ';
            // Testing (to be removed) - Empty value case
            if( empty($my_var_one) && empty($my_var_two) )
                echo 'Инвойс';
        }
    }

    ВСЕ РАБОТАЕТ ОТЛИЧНО.
    Теперь появилась задача, добавить такую же колонку в Личный кабинет на странице заказов.
    Мозгов не хватает (

    Нашел код, как добавить в эту таблицу колонку – получилось, а вот как вывести строки по тому же принципу как выше – Инвойс/ПРОЕКТ (по принципу кода выше) ума не хватает (
    Прошу помощи!

    Вот код который добавляет колонку в Личный кабинет на странице заказов:

    // Добавить новую колонку по Типу Заказа на странице заказов в личном кабинете
    //1. Добавляем колонку после колонки с датой
    add_filter( 'woocommerce_account_orders_columns', 'my_column_product');
    function my_column_product($columns) {
        $new_columns = array();
        foreach ($columns as $key => $value) {
            $new_columns[$key] = $value;
            if ($key == 'order-date' ) $new_columns['order-products'] = "Тип Заказа";
        }
        return $new_columns;
    }
    /* 2. Заполняем колонку "Тип Заказа"
  • Тема «Вывести данные на странице заказов» закрита для нових відповідей.