//работа с аргументами
                    function catArgs( $title ){
                        $args = array(
                            'post_type' => 'cats',
                            'meta_key' => 'родительская_категория',
                            'meta_value' => $title,
                            'posts_per_page' => -1
                        );
    
                        return $args;
                    }
                    function groupArgs( $title ){
                        $args = array(
                            'post_type' => 'warehouse',
                            'posts_per_page' => -1,
                            'meta_key' => 'группа',
                            'meta_value' => $title,
                        );
                        
                        return $args;
                    }
                    
                    //работа с аргументами
                        
                                 
                    //работа с запросами
                    function getCats( $title ){
                        $args = catArgs( $title );
                        $pcat = get_posts( $args );
                        
                        return $pcat; 
                    }       
                    function getGroup( $title ){
                        $args = groupArgs( $title );
                        $pgroup = get_posts( $args );
                        
                        return $pgroup; 
                    }
                    
                    //работа с запросами
                                 
                    //работа с результатами запроса
                    function sortDataByGroup( $title, $data ){
                        $filtered_posts = [];
                        $title = mb_strtolower($title);
                        foreach( $data as $product ){
                            $group = mb_strtolower($product->группа);
                            if ( trim($title) == trim($group) ){
                                $filtered_posts[] = $product;
                            }
                        }
                        
                        return $filtered_posts;
                    }            
                    //работа с результатами запроса
                                 
                                 
                    //если нет запроса через фильтр
                    //очень много вложенностей
                    //проблемы с читабельностью кода
                    //плохая оптимизация кода
                                 
                    //если нет запроса через фильтр
                    if( empty($_GET) ){
                        
                        //первоначальный запрос на получения подкатегорий
                        $pcats = getCats( $post_title );
                        $prIndex = 0;
                        //если есть подкатегории
                        if( count( $pcats ) > 0 ){
                            //проходимя по подкатегориям
                            foreach( $pcats as $pcat ){
                                $sortedProducts = sortDataByGroup( $pcat->post_title, $productsAll->posts );
                                
                                if( !empty( $sortedProducts ) ){
                                    $pr = createUniqFromObjHidden( $sortedProducts );
                                    //если есть товары (то он автоматом не исчет подкатегории)
                                    //работает например Ковры->Турция и выдает коллекции в виде секции
                                    //которые содержат уже группы товаров в зависимости от дизайна
                                    //но с данной коллекции
                                    if( !empty($pr) ){
                                        echo '
';
                                        echo $pr['html'];
                                        $prIndex++;
                                        
                                    }
                                }else{
                                    //echo $pcat->post_title . '
';
                                    //пытаемся найти подкатегории подкатегории
                                    $p2cats = getCats( $pcat->post_title );
                                    if( count( $p2cats ) > 0 ){
                                        $sortedProducts = [];
                                        foreach( $p2cats as $p2cat ){
                                            $sortedProducts = sortDataByGroup( $p2cat->post_title, $productsAll->posts );
                                        }
                                        if( !empty( $sortedProducts ) ){
                                            $pr = createUniqFromObjHidden( $sortedProducts );
                                            //если есть товары (то он автоматом не исчет подкатегории)
                                            //работает например Ковры->Турция и выдает коллекции в виде секции
                                            //которые содержат уже группы товаров в зависимости от дизайна
                                            //но с данной коллекции
                                            if( !empty($pr) ){
                                                echo '
';
                                                echo $pr['html'];
                                                $prIndex++;
                                                    
                                            }
                                        }else{
                                            $newData = [];
                                            foreach( $p2cats as $p2cat ){
                                                // echo $p2cat->post_title . '!
';
                                                $sortedProducts = sortDataByGroup( $p2cat->post_title, $productsAll->posts );
                                                if(!empty($sortedProducts)){
                                                    $newData[] = $sortedProducts[0];
                                                }
                                            }
                                            if( !empty( $newData ) ){
                                                $pr2 = createUniqFromObjHidden( $newData );
                                                //если есть товары (то он автоматом не исчет подкатегории)
                                                //работает например Ковры->Турция и выдает коллекции в виде секции
                                                //которые содержат уже группы товаров в зависимости от дизайна
                                                //но с данной коллекции
                                                if( !empty($pr2) ){
                                                    echo '
';
                                                    echo $pr2['html'];
                                                    $prIndex++;
                                                        
                                                }
                                            }
                                        }
                                    }else{
                                        //echo '
нет подкатегорий';
                                    }
                                }
                            }
                            //если нет товаров, то пытается найти подкатегории
                            //работает например в глобальной категории Ковры и выдает секции со страннами
                            //которые содержат уже коллекции бекз картинок
                            if( $prIndex < 1 ){
                                foreach( $pcats as $pcat ){ 
                                    
                                    $podCats = getCats( $pcat->post_title );
                                    
                                    if( !empty( $podCats ) ){
                                        
                                        $podCats = filterPodCatsBasedOnProducts($podCats, $productsAll);
                                        
                                        
                                        if( !empty($podCats) ){
                                            echo '
';
                                            $render = creatPodCatCards($podCats);
                                            echo $render;
                                        }
                                    }
                                    
                                }
                                
                            }
                        }else{
                            
                            //тут мы ищем товары категории в каторой находимся
                            $products = sortDataByGroup( $post_title, $productsAll->posts );
                            //
                            //если нет товаров  данной категории
                            if( count($products) < 1 ){
                                echo '
                                Тут пока нет товаров
                                ';
                            }else{
                                $pr = createUniqFromObj( $products );
                                echo $pr['html'];
                            }
                            
                        }
                    }else{
                        
                        //сценарий когда воспользовались фильтром
                        if(!isset($_GET['product_page'])){
                            // $args_filtered = array(
                            //     'post_type' => 'warehouse',
                            //     'posts_per_page' => -1,
                            //     'meta_query' => array(
                            //         'relation' => 'AND',
                            //     )
                            // );
                            // foreach( $_GET as $k => $f ){
                            //     $mq = [];
                            //     $mq['key'] = $k;
                            //     $mq['value'] = $f;
                            //     //
                            //     $args_filtered['meta_query'][] = $mq;
                            // }
                            // //
                            // $products = get_posts($args_filtered);
                            // $vi = count( $products );
                            // //
                            // if($vi > 0){
                            //     $pr = createUniqFromObj( $products );
                            // }
                        }else{
                            $args2 = array(
                                'post_type' => 'cats',
                                'meta_key' => 'родительская_категория',
                                'meta_value' => $post_title,
                                'posts_per_page' => -1
                            );
                            $pcats = get_posts($args2);
                            foreach( $pcats as $pc ){
                                $args3 = array(
                                    'post_type' => 'warehouse',
                                    'posts_per_page' => 4,
                                    'meta_key' => 'группа',
                                    'meta_value' => $pc->post_title,
                                );
                                $products = get_posts($args3);
                                $vi = 0;
                                foreach( $products as $p ){
                                    //
                                    $product_field = get_fields( $p->ID );
                                    //
                                    unset( $product_field['оптимизированные_изображения'], $product_field['id'], $product_field['артикул'], $product_field['наименование'],$product_field['наименование'], $product_field['описание'], $product_field['картинки'], $product_field['код_цвета2'], $product_field['код_цвета1'], $product_field['основной_поставщик'] );
                                    //
                                    $filter_fields[] = $product_field;
                                    //
                                    $vi++;
                                }
                                
                                if($vi > 0){
                                
                                    $si = 0;
                                    echo '
';
                                    //
                                    $pr = createUniqFromObj( $products );
                                    //
                                    if( $si < 1){
                                        echo '
                                        Тут пока нет товаров
                                        ';
                                    }
                                    echo '
';
                                }else{
                                    $args3 = array(
                                        'post_type' => 'cats',
                                        'posts_per_page' => -1,
                                        'meta_key' => 'родительская_категория',
                                        'meta_value' => $pc->post_title,
                                    );
                                    $products = get_posts($args3);
                                    //
                                    $vi = 0;
                                    foreach( $products as $p ){
                                        //
                                        $product_field = get_fields( $p->ID );
                                        //
                                        unset( $product_field['оптимизированные_изображения'], $product_field['id'], $product_field['артикул'], $product_field['наименование'],$product_field['наименование'], $product_field['описание'], $product_field['картинки'], $product_field['код_цвета2'], $product_field['код_цвета1'], $product_field['основной_поставщик'] );
                                        //
                                        $filter_fields[] = $product_field;
                                        //
                                        $vi++;
                                    }
                                    //
                                    if($vi > 0){
                                        $si = 0;
                                        $em_c = 0;
                                        foreach( $products as $p ){
                                            $pid = $p->ID;
                                            $si++;
                                            $args_end = array(
                                                'post_type' => 'warehouse',
                                                'posts_per_page' => -1,
                                                'meta_key' => 'группа',
                                                'meta_value' => $p->post_title,
                                            );
                                            $products_count = count(get_posts($args_end));
                                            
                                            if( $products_count > 0 ){
                                                $em_c++;
                                            }
                                        }
                                        //
                                        if($em_c > 0){
                                            echo '
';
                                            $pr = createUniqFromObj( $products );
 
                                        }
                                        if( $pr < 1){
                                            echo '
                                            Тут пока нет товаров
                                            ';
                                        }
                                        echo '
';
                                    }
                                }
                            }
                            //
                            //
                            //
                            $current_page = $_GET['product_page'] ?? 1;
                            $args = array(
                                'post_type' => 'warehouse',
                                'posts_per_page' => -1,
                                'meta_key' => 'группа',
                                'meta_value' => $post_title,
                                'paged'=> $current_page,
                            );
                            //
                            $products = get_posts($args);
                            //
                            $si = 0;
                            $pr = createUniqFromObj( $products );
                            if( $pr < 1 ){
                                echo '
                                Тут пока нет товаров
                                ';
                            }
                    
                        }
                    }
                ?>