Здравствуйте. Скажите, у меня 1.5.6 не ocstore. Но у меня выведено поле name="product_description[2][meta_title]" в карточке товара. Похоже что просто в коде, не модуль. Соответственно в экспорте\импорте у меня не используется поле _META_TITLE_ для карточки товара. Как его можно добавить в экспорт\импорт?
Вот что я сделал.
В admin\controller\module\csvprice_pro.php
строку
$a[] = array('uid' => '_HTML_TITLE_', 'name' => 'HTML Title');
переместил вниз под строку
$a[] = array('uid' => '_META_KEYWORDS_', 'name' => 'Meta Keywords');
и заменил _HTML_TITLE_ на _META_TITLE_ который у меня добавлен
В admin\model\tool\csvprice_pro.php
строку
if(isset($this->field_caption['_META_TITLE_'])) $sql .= ' seo_title = \'' . $this->db->escape($data[$this->field_caption['_META_TITLE_']]) . '\',';
также вынес из if($this->CoreType == 'ocstore') и перенёс к if(isset($this->field_caption['_META_KEYWORDS_'])) $sql .= ' meta_keyword = \'' . $this->db->escape($data[$this->field_caption['_META_KEYWORDS_']]) . '\',';
заменил везде по файлу _HTML_TITLE_ на _META_TITLE_ который у меня добавлен
при этом при попытке экспорта у меня выдало ошибку:
Notice: Error: Unknown column 'pd.seo_title' in 'field list'
Error No: 1054
SELECT DISTINCT p.product_id,REPLACE (pd.name, '"', '"') AS name,REPLACE (p.model, '"', '"') AS model,pd.seo_title FROM product p LEFT JOIN `product_description` pd ON (p.product_id = pd.product_id) WHERE pd.language_id = '2' ORDER BY p.product_id LIMIT 0, 2000 in /xxx/system/database/mysql.php on line 50
тогда я в admin\model\tool\csvprice_pro.php в
if(isset($data['fields_set']['_META_TITLE_'])) {
$_fields[] = 'pd.seo_title';
if( ! isset($_left['pd']) ) $_left['pd'] = " LEFT JOIN `" . DB_PREFIX . "product_description` pd ON (p.product_id = pd.product_id) ";
if( ! isset($_where['pd']) ) $_where['pd'] = " pd.language_id = '" . (int)$data['language_id'] . "' ";
$ods_title[] = '_META_TITLE_';
}
заменил $_fields[] = 'pd.seo_title'; на $_fields[] = 'pd.meta_title';
экспорт прошёл удачно, но теперь при импорте выдаёт
Notice: Error: Unknown column 'seo_title' in 'field list'
Error No: 1054
UPDATE `product_description` SET seo_title = 'xxx' WHERE product_id = '63' AND language_id = '2' in /xxx/system/database/mysql.php on line 50
где ещё нужны правки?
UPDATE: Вобщем нашёл сам заменил по файлу 'seo_title' на 'meta_title'