Перейти к содержанию
toporchillo

[Поддержка] Экспорт в Яндекс.Маркет для OpenCart 1.5.x

Рекомендуемые сообщения

Передача параметров php через .htaccess запрещена, я добавил данные опции в php.ini

 

После добавления пропала функция формирования файлы через ssh 8a328-yml-21kb.png?nocache=1

 

 

c5c0f-yml-1-12kb.png?nocache=1

 

Если выделить пару категорий и запустить .../index.php?route=feed/yandex_yml

то файл создается.

если выделить все категориии, то

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 210 bytes) in ..../system/database/mysql.php on line 30

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Просмотрел файл system/logs/error.txt

Ничего.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ключевое сообщение вот это: Allowed memory size of 134217728 bytes exhausted (tried to allocate 210 bytes)

У вас для экспорта не хватило памяти.

 

Во-первых можно добавить PHP памяти в настройках PHP.

 

Кроме того, версии модуля  1.7 и позже, выгружают YML блоками - для экономии памяти.

В файле catalog / controller / feed / yandex_yml.php

в строке 35

protected $CHUNK_SIZE = 8000;

установлен размер блока - 8000 товаров в одном блоке.

Чем больше блок, тем больше требуется памяти, но меньше грузится MySQL, и наоборот.

 

Вам надо экспериментально уменьшать размер блока.

Если упадет MySQL (Has gone away), значит блок увеличивайте.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я добавлял памяти, но ее все равно мало и мало.

У меня версия

define ('YANDEX_YML_VERSION', '1.6.5');

Строки protected $CHUNK_SIZE = 8000;

нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я добавлял памяти, но ее все равно мало и мало.

У меня версия

define ('YANDEX_YML_VERSION', '1.6.5');

Строки protected $CHUNK_SIZE = 8000;

нет.

Обновляйтесь. Заменяете файлы и пересохраняете настройки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. Обновил до последней версии.

2. Изменил protected $CHUNK_SIZE = 4000;

 

Захожу по адресу .../index.php?route=feed/yandex_yml Примерно за 1 минуту формируется страничка с данными.

Через shell php .../export/yandex_yml.php За 10 сек формируется файл yandex_yml.xml в 17mb

 

Благодарю админа по помощь!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пара вопрсоов.

 

1. Иногда нужно выключать категории на сайте (временно) Можно ли добавить функцию не выгружать товары в неактивных категориях?

2. Планирую использовать модуль для улучшения сниппета в поисковой выдаче, т.е. нужна выгрузка только цен. Можно ли не выгружать <description> <vendor> <param name="Вес"> и другуие ненужные значения ?  Что бы облегчить формиование и обьем файла? В Яндекс.Маркете не буду выгружать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте! Подскажите пожалуйста, в бесплатном адаптивном шаблоне kitchen [быстрый старт OCSHOP.CMS] версия выгрузки на яндекс маркет такая же как и обсуждаемый здесь модуль? Меня интересует смогу ли я в шаблоне kitchen [быстрый старт OCSHOP.CMS] выгружать товар на маркет с разными вариантами цвета имея одну страничку товара, или для каждого варианта цвета товара нужна отдельная страница товара? Или все же необходим ваш модуль для решения это задачи? Заранее благодарен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Помогите с проблемой - не сохраняется форма и отображается без разделов одной страницей. Переустановка модуля не помогла.

Раньше работала, а сейчас перестала. В логах ничего не отображается. Не пойму в чем проблема. Может быть дело в установке SSL?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Отключил CloudFlare - форма заработала. Есть варианты обхода?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день!

 

Обновил модуль до последней версии и появился ряд ошибок:

  • Прайс лист уменьшился на 2/3, при тех же настройках модуля;
  • Непонятным образом в листе увеличилась стоимость доставки на 10р.;
  • Указанный путь для выгрузки (Адрес экспорта) перестал работать, но работает тот, что предназначен для планировщика;
  • Не работает тег oldprice (ради него обновление и делал).

Помогите пожалуйста!

 

Opencart 1.5.2.1 

Модуль обновлял с версии 1.6.5.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

catalog/controller/feed/yandex_yml.php

ищите строку:

$data['url'] = $this->url->link('product/product', 'path=' . $this->getPath($product['category_id']) . '&product_id=' . $product['product_id']);
замените ее на:

$data['url'] = $this->url->link('product/product', 'path=' . $this->getPath($product['category_id']) . '&product_id=' . $product['product_id'] . '&utm_source=market.yandex.ru');

 

День добрый, не подставляются метки при внесении данной правки. Быть может из за ЧПУ?

И второй момент, можно ли как-то в utm_term прицепить ID Товара?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день! Задавали вопрос несколько страниц назад про валюты.

 

У меня в магазине есть товары и в $ и в рублях и в евро. В файле цена формируется так:

<price>120</price>
<currencyId>RUB</currencyId>
 
120 по факту это $
 
Подскажите, пожалуйста, как исправить этот момент?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если в карточке товара отмечено показывать товар в категории первого уровня, где размещен данный товар, то в настройках модуля не отрабатывает опция Категории Яндекс, которая будет задана для подкатегории (она является главной для товара)

Если товар не показывать в головной категории, то опция Категории Яндекс отрабатывает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Error parsing XML feed: Required child tag "category" is missing for XML tag "categories" (строка 15, столбец 14)

 

в 15 строке: <category id="59">Сабвуферы</category>

 

В чем проблема?:( 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Помогите с проблемой - не сохраняется форма и отображается без разделов одной страницей. Переустановка модуля не помогла.

Раньше работала, а сейчас перестала. В логах ничего не отображается. Не пойму в чем проблема. Может быть дело в установке SSL?

А что в консоли Javascript? F12 нажмите. Подозреваю, что у Cloudflare иная версия библиотеки jQuery.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Добрый день! Задавали вопрос несколько страниц назад про валюты.

 

У меня в магазине есть товары и в $ и в рублях и в евро. В файле цена формируется так:

<price>120</price>
<currencyId>RUB</currencyId>
 
120 по факту это $
 
Подскажите, пожалуйста, как исправить этот момент?

 

Если вы в магазине рубли называете долларам, я при чем?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если в карточке товара отмечено показывать товар в категории первого уровня, где размещен данный товар, то в настройках модуля не отрабатывает опция Категории Яндекс, которая будет задана для подкатегории (она является главной для товара)

Если товар не показывать в головной категории, то опция Категории Яндекс отрабатывает.

Поищите в этой теме про главные категории.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

День добрый, не подставляются метки при внесении данной правки. Быть может из за ЧПУ?

И второй момент, можно ли как-то в utm_term прицепить ID Товара?

'utm_term=' . $product['product_id']

 

SeoPro режет utm-метки в URL. Эта охота на ведьм дубли страниц. Скажите спасибо Фрилансеру.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вдруг кому пригодится:

Наткнулся на ошибку: 

Notice: getimagesize() [function.getimagesize]: Read error! in public_html/catalog/controller/feed/yandex_yml.php on line 461

Как оказалось - картинка была повреждена и не загрузилась на сервер.

Решение:

В зависимости от версии модуля, в районе 500 строк ищем в файле catalog\controller\feed\yandex_yml.php:

	protected function prepareImage($image) {
		if ((strpos($image, 'http://') === 0) || (strpos($image, 'https://') === 0)) {
			return $image;
		}
		if (is_file(DIR_IMAGE . $image)) {
			list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $image);
			if ($width_orig < 600 || $height_orig < 600 || !$this->ORIGINAL_IMAGES) {
				return $this->model_tool_image->resize($image, 600, 600);
			} else {
				$parts = explode('/', $image);
				$new_url = implode('/', array_map('rawurlencode', $parts));			
				return HTTP_IMAGE . $new_url;
			}
		}
		return false;
	}

Заменяем строки на: 

 	protected function prepareImage($image) {
		if ((strpos($image, 'http://') === 0) || (strpos($image, 'https://') === 0)) {
			return $image;
		}
				if (is_file(DIR_IMAGE . $image)) {
				try{
				 if (getimagesize(DIR_IMAGE . $image) == 0) throw new Exception("Не смогли получить размер изображения");
			list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $image);
			if ($width_orig < 600 || $height_orig < 600 || !$this->ORIGINAL_IMAGES) {
				return $this->model_tool_image->resize($image, 600, 600);
			} else {
				$parts = explode('/', $image);
				$new_url = implode('/', array_map('rawurlencode', $parts));			
				return HTTP_IMAGE . $new_url;
			}
		}
		catch(exception $e){
		    echo "</br></br><b><center><h1>Произошла ошибка - повреждена картинка:</center></h1></b> ",
	$image;
	echo "</br></br></br> ";
		}
		}
		return false;
	}

Теперь, при выводе yml нам выведется адрес поврежденной картинки, которую надо заменить.

Всё.

 

7f7944311e35.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

'utm_term=' . $product['product_id']

 

SeoPro режет utm-метки в URL. Эта охота на ведьм дубли страниц. Скажите спасибо Фрилансеру.

 

Ну, если к товару метку задавать не через ?utm, а через #utm (выяснил методом тыка, тоже был удивлен обрубанию), то и метрика их видит, и сео-про не обрезает при заходе. Но проблема в том, что даже в генерируемом .yml они не добавляются. Тут явно не к сео-про вопрос, судя по всему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, если к товару метку задавать не через ?utm, а через #utm (выяснил методом тыка, тоже был удивлен обрубанию), то и метрика их видит, и сео-про не обрезает при заходе. Но проблема в том, что даже в генерируемом .yml они не добавляются. Тут явно не к сео-про вопрос, судя по всему.

Смотрим YML: http://toporchillo.myjino.ru/ocstore/index.php?route=feed/yandex_yml

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не могу избавиться от баркода

Поставил: Брать тэг typePrefix из mpn

 

При сохранении настроек сохраняет брать barcode из mpn.

и выводит

<barcode>mpn</barcode>

по всем товарам

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да я не спорю, что конкретно у Вас и у кого-то еще все работает. Просто у меня тоже в генерируемом файле ничего не добавилось. Правда, особо разбираться руки еще не дошли. Завтра на работе покопаюсь.

Плюс для чистоты эксперимента хотелось бы увидеть вариант с включенным чпу.

К слову, как вариант, может быть еще проблема из-за того, что у нас приблуда для хэштегов для автовыбора опций? Может, они как-нить друг с другом конфликтуют?

Ладно, будем завтра уже копаться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да я не спорю, что конкретно у Вас и у кого-то еще все работает. Просто у меня тоже в генерируемом файле ничего не добавилось. Правда, особо разбираться руки еще не дошли. Завтра на работе покопаюсь.

Плюс для чистоты эксперимента хотелось бы увидеть вариант с включенным чпу.

К слову, как вариант, может быть еще проблема из-за того, что у нас приблуда для хэштегов для автовыбора опций? Может, они как-нить друг с другом конфликтуют?

Ладно, будем завтра уже копаться.

А тут с ЧПУ:

http://toporchillo.myjino.ru/ocstore/htc_touch_hd?utm_source=market.yandex.ru&utm_term=28

Без ЧПУ ссылка вида

http://toporchillo.myjino.ru/ocstore/index.php?route=product/product&product_id=28

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.