[Помогите] Undefined index: seo_title & seo_h1

Тема в разделе "OpenCart", создана пользователем dark_forces, 29 мар 2013.

  1. dark_forces

    dark_forces

    Регистрация:
    13 ноя 2012
    Сообщения:
    8
    Симпатии:
    0
    Код:
    Notice: Undefined index: seo_title in /admin/model/catalog/product.php on line 13
    Notice: Undefined index: seo_h1 in /admin/model/catalog/product.php on line 13
    
    при импорте товара через total import pro выдаёт такую ошибку
     
  2. apple-boom

    apple-boom

    Регистрация:
    21 ноя 2012
    Сообщения:
    152
    Симпатии:
    297
    У вас ocstore установлен?
     
  3. Florenco

    Florenco

    Регистрация:
    3 мар 2013
    Сообщения:
    220
    Симпатии:
    101
    Это вроде бы модуль для OpenCart, в нём нет этих строк, и в модуле соответственно тоже, их нужно в него добавлять.
     
  4. ingenerks

    ingenerks

    Регистрация:
    25 окт 2012
    Сообщения:
    254
    Симпатии:
    80
    Так а товары импортируются или нет?
     
  5. dark_forces

    dark_forces

    Регистрация:
    13 ноя 2012
    Сообщения:
    8
    Симпатии:
    0
    товары импортируются, установлена русская сборка osstore 1.5.4.1
    какие строчки необходимо добавить и в какой файл мода? хотя бы приблизительно
     
  6. Florenco

    Florenco

    Регистрация:
    3 мар 2013
    Сообщения:
    220
    Симпатии:
    101
    По этому модулю не подскажу, но это не пару строк. На русском форуме есть рабочий импорт/экспорт под эту версию, лучше уж её поставить и не мучиться.
    А ошибки эти, скорее из-за того, что вы этим модулем при импорте потёрли указанные строки в таблице product_description
    Если же сильно хочется с этим модом подружить магазин, то нужно на примере "meta_keyword" добавлять такие же строки ниже во все файлы модуля, меняя названия на вышеуказанные в ошибках.
     
    dark_forces нравится это.
  7. mik_mihka

    mik_mihka

    Регистрация:
    Среда
    Сообщения:
    4
    Симпатии:
    0
    Здравствуйте, прошу помощи в решении проблемы:
    PHP Notice: Undefined index: seo_title in /<адрес сайта>/http/vqmod/vqcache/vq2-admin_model_catalog_category.php on line 13

    в данном файле, в 13 строке:
    $this->db->query("INSERT INTO " . DB_PREFIX . "category_description SET category_id = '" . (int)$category_id . "', language_id = '" . (int)$language_id . "', name = '" . $this->db->escape($value['name']) . "', meta_keyword = '" . $this->db->escape($value['meta_keyword']) . "', meta_description = '" . $this->db->escape($value['meta_description']) . "', description = '" . $this->db->escape($value['description']) . "', description_bottom = '" . $this->db->escape($value['description_bottom']) . "', seo_title = '" . $this->db->escape($value['seo_title']) . "', seo_h1 = '" . $this->db->escape($value['seo_h1']) . "'");

    Стоит у меня OCSGOP 1.5.6.4 и exchange1c , при этом товары, категории,изображения - грузятся. Не грузится цена. И заказы выгружаются.
    описанное в этой теме - проверил, у меня все записи присутствуют. - http://wmasteru.org/threads/Ошибка-seo_h1-seo_title.3302/
     
  8. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.125
    Симпатии:
    813
    Они у вас в модуле exchange1c не присутствуют.
     
  9. mik_mihka

    mik_mihka

    Регистрация:
    Среда
    Сообщения:
    4
    Симпатии:
    0
    в exchange1c :
    $result['category_description'] = array(
    $language_id => array(
    'name' => (string)$category->Наименование
    ,'meta_keyword' => (isset($data['category_description'][$language_id]['meta_keyword'])) ? $data['category_description'][$language_id]['meta_keyword'] : ''
    ,'meta_description' => (isset($data['category_description'][$language_id]['meta_description'])) ? $data['category_description'][$language_id]['meta_description'] : ''
    ,'description' => (isset($category->Описание)) ? (string)$category->Описание : ((isset($data['category_description'][$language_id]['description'])) ? $data['category_description'][$language_id]['description'] : '')
    //доработка для OCSHOP
    ,'description_bottom' => (isset($category->Описание)) ? (string)$category->Описание : ((isset($data['category_description'][$language_id]['description_bottom'])) ? $data['category_description'][$language_id]['description_bottom'] : '')
    //конец доработки
    ,'seo_title ' => (isset($data['category_description'][$language_id]['seo_title'])) ? $data['category_description'][$language_id]['seo_title'] : ''
    ,'seo_h1' => (isset($data['category_description'][$language_id]['seo_h1'])) ? $data['category_description'][$language_id]['seo_h1'] : ''
    ),
    );

    return $result;

    в массив добавлено было... но...
     
    Lasted edited by : 13 янв 2017 в 18:37
  10. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.125
    Симпатии:
    813
    Это что-то не то (вероятно, это выгрузка из магазина в 1С, а у вас ошибка при выгрузке из 1С). Найдите, где у вас в этом модуле используется model_catalog_category и посмотрите, что передаётся при вызове метода из неё.
     
  11. mik_mihka

    mik_mihka

    Регистрация:
    Среда
    Сообщения:
    4
    Симпатии:
    0
    PHP:
    private function insertCategory($xml$parent 0$language_id) {

            
    $this->load->model('catalog/category');

            foreach (
    $xml as $category){

                if (isset(
    $category->Ид) && isset($category->Наименование) ){
                    
    $id =  (string)$category->Ид;

                    
    $data = array();

                    
    $query $this->db->query('SELECT * FROM `' DB_PREFIX 'category_to_1c` WHERE `1c_category_id` = "' $this->db->escape($id) . '"');

                    if (
    $query->num_rows) {
                        
    $category_id = (int)$query->row['category_id'];
                        
    $data $this->model_catalog_category->getCategory($category_id);
                        
    $data['category_description'] = $this->model_catalog_category->getCategoryDescriptions($category_id);
                        
    $data $this->initCategory($category$parent$data$language_id);
                        
    $this->model_catalog_category->editCategory($category_id$data);
                    }
                    else {
                        
    $data $this->initCategory($category$parent, array(), $language_id);
                        
    $category_id $this->model_catalog_category->addCategory($data);
                        
    $this->db->query('INSERT INTO `' DB_PREFIX 'category_to_1c` SET category_id = ' . (int)$category_id ', `1c_category_id` = "' $this->db->escape($id) . '"');
                    }

                    
    $this->CATEGORIES[$id] = $category_id;
                }

                if (
    $category->Группы$this->insertCategory($category->Группы->Группа$category_id$language_id);
            }

            unset(
    $xml);
        }

    Нашел, а куда добавлять?
     
    Lasted edited by : 16 янв 2017 в 18:41
  12. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.125
    Симпатии:
    813
    Данные у вас формируются здесь:
    PHP:
    $data $this->initCategory($category$parent, array(), $language_id);
    Так что ищите в том же файле метод initCategory.
     
  13. mik_mihka

    mik_mihka

    Регистрация:
    Среда
    Сообщения:
    4
    Симпатии:
    0
    В ней тоже присутствуют все значения...

    PHP:
    private function initCategory($category$parent$data = array(), $language_id) {

            
    $result = array(
                
    'status'         => isset($data['status']) ? $data['status'] : 1
                
    ,'top'            => isset($data['top']) ? $data['top'] : 1
                
    ,'parent_id'      => $parent
                
    ,'category_store' => isset($data['category_store']) ? $data['category_store'] : array(0)
                ,
    'keyword'        => isset($data['keyword']) ? $data['keyword'] : ''
                
    ,'image'          => (isset($category->Картинка)) ? (string)$category->Картинка : ((isset($data['image'])) ? $data['image'] : '')
                ,
    'sort_order'     => (isset($category->Сортировка)) ? (int)$category->Сортировка : ((isset($data['sort_order'])) ? $data['sort_order'] : 0)
                ,
    'column'         => 1
            
    );

            
    $result['category_description'] = array(
                
    $language_id => array(
                    
    'name'             => (string)$category->Наименование
                    
    ,'meta_keyword'     => (isset($data['category_description'][$language_id]['meta_keyword'])) ? $data['category_description'][$language_id]['meta_keyword'] : ''
                    
    ,'meta_description'    => (isset($data['category_description'][$language_id]['meta_description'])) ? $data['category_description'][$language_id]['meta_description'] : ''
                    
    ,'description'         => (isset($category->Описание)) ? (string)$category->Описание : ((isset($data['category_description'][$language_id]['description'])) ? $data['category_description'][$language_id]['description'] : '')
                    ,
    'description_button'         => (isset($category->Описание)) ? (string)$category->Описание : ((isset($data['category_description'][$language_id]['description_button'])) ? $data['category_description'][$language_id]['description_button'] : '')
                    ,
    'seo_title'        => (isset($data['category_description'][$language_id]['seo_title'])) ? $data['category_description'][$language_id]['seo_title'] : ''
                    
    ,'seo_h1'           => (isset($data['category_description'][$language_id]['seo_h1'])) ? $data['category_description'][$language_id]['seo_h1'] : ''
                
    ),
            );

            return 
    $result;
        }
     
    Lasted edited by : 17 янв 2017 в 17:43
  14. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.125
    Симпатии:
    813
    Теперь покажите model_catalog_category.php (первые строк 20).