Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Настройка карточки товара. Выгрузка товаров в yml


 Поделиться

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

Использую: Opencart 2.0.3,  модуль Y.CMS.

При помощи данного модуля выгружаю товары в прайс yml.

Есть две проблемы кодировка файла yml в url фото вместо / выводит %2F и не верно выводит название ИМ. - устранить данную проблему

А теперь главная проблема: модуль создает на каждый размер товара свое товарное предложение, по требованиям Я. Маркет при переходе на в карточку товара ИМ главная цена  показывала стоимость того размера с которого перешел с Маркета. Все цены указаны в опциях "размер 1 = 100 р", "размер 2 = 3000 р", "размер 3 = 3500 р". главная цена установлена по минимальной цене опции.

Вот сайт для понимания: rumanchester.ru

 

 

post-700536-0-96614500-1457032246_thumb.png

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


Одно только не пойму: почему увас размер чекбоксами задается, а не селектом или радиокнопками?

А если человеку нужно два размера себе и в подарок?

Спасибо за подсказку, попробую разобраться с опциями.

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


Яндекс даже для собственного Маркета не может нормальный модуль написать :mrgreen:

 

Используйте мою "поделку на коленке": http://liveopencart.ru/opencart-moduli-shablony/moduli/obmen-dannyimi/eksport-v-yandeks-yml-dlya-opencart-2-0-x

 

А "проблему" выбора опций решает несложный Яваскрипт, добавленный на страницу товара:

<script type="text/javascript"><!--
$(document).ready(function() {
    var hash = window.location.hash;
    if (hash) {
	var hashpart = hash.split('#');
	var  vals = hashpart[1].split('-');
        for (i=0; i<vals.length; i++) {
            $('div.options').find('select option[value="'+vals[i]+'"]').parent().find('option').removeAttr('selected');
            $('div.options').find('select option[value="'+vals[i]+'"]').attr('selected', true).parent().trigger('change');
            $('div.options').find('input[type="radio"][value="'+vals[i]+'"]').attr('checked', true).trigger('click');
        }
    }
})
//--></script>
Прошу прощения а куда именно данный код вставить? в какое место на странице?
Ссылка на комментарий
Поделиться на других сайтах


Например перед <?php echo $footer; ?> в шаблон product.tpl

Что то с кодом не выходит, только время загрузки страницы увеличил и больше ни чего не происходит

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


Мой модуль экспорта формирует ссылки на товары в виде site.ru/ssylka_na_tovar#kod_opcii

 

Яваскрипт обрабатывает этот хвост #kod_opcii и при заходе на страницу переключает селекторы опций.

Если у вас нет хэш-кодирования опций в YML, то ничего у вас и не выйдет!

А, понятно.
Ссылка на комментарий
Поделиться на других сайтах


Мой модуль экспорта формирует ссылки на товары в виде site.ru/ssylka_na_tovar#kod_opcii

 

Яваскрипт обрабатывает этот хвост #kod_opcii и при заходе на страницу переключает селекторы опций.

Если у вас нет хэш-кодирования опций в YML, то ничего у вас и не выйдет!

Проверил хвост создает, но ява не обрабатывает http://rumanchester.ru/postelnoe_belje/komplekt_postelnogo_belya_imperatritsa_1#16491

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


В вашем случае код будет такой

var hash = window.location.hash;
if (hash) {
	var hashpart = hash.split('#');
	var  vals = hashpart[1].split('-');
    for (i=0; i<vals.length; i++) {
        $('#product').find('select option[value="'+vals[i]+'"]').parent().find('option').removeAttr('selected');
        $('#product').find('select option[value="'+vals[i]+'"]').attr('selected', true).parent().trigger('change');
        $('#product').find('input[type="radio"][value="'+vals[i]+'"]').attr('checked', true).trigger('click');
    }
}

Так как верстка у вас отличается от стандартной.

 

А Яваскрипт-код вы на страницу не внедрили.

Спасибо, друг. Получилось я в catalog/view/theme/default/template/product/ в файл внес изменения, а в system/catalog/view/theme/default/template/product/ изменения не добавил, сейчас все плучилось

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


  • 1 год спустя...
On 04.03.2016 at 10:50 AM, toporchillo said:

Яндекс даже для собственного Маркета не может нормальный модуль написать :mrgreen:

 

Используйте мою "поделку на коленке": http://https://opencartforum.com/files//opencart-moduli-shablony/moduli/obmen-dannyimi/eksport-v-yandeks-yml-dlya-opencart-2-0-x

 

А "проблему" выбора опций решает несложный Яваскрипт, добавленный на страницу товара:


<script type="text/javascript"><!--
$(document).ready(function() {
    var hash = window.location.hash;
    if (hash) {
	var hashpart = hash.split('#');
	var  vals = hashpart[1].split('-');
        for (i=0; i<vals.length; i++) {
            $('div.options').find('select option[value="'+vals[i]+'"]').parent().find('option').removeAttr('selected');
            $('div.options').find('select option[value="'+vals[i]+'"]').attr('selected', true).parent().trigger('change');
            $('div.options').find('input[type="radio"][value="'+vals[i]+'"]').attr('checked', true).trigger('click');
        }
    }
})
//--></script>

Огромное спасибо!!!!  скрипт работает. Одна только проблема: установлена базовая стоимость за 100 грамм и к опциям сделано - + N%. и у меня в yml файле на все опции в итоге идет цена за 100 грамм. https://orehi77.ru/index.php?route=feed/yandex_yml подскажите, как поправить, чтобы в юмл-файле опции отображались с правильной ценой?

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


1 hour ago, toporchillo said:

А в админке как цены для опций указаны?

http://prntscr.com/haqgte вот таким вариантом. по-другому мне никак. цены меняются каждую неделю. щас бакс подскачил, прислали новый прайс, сижу матом ругаюсь: опять все править нужно. если ставить опцию цена =, то я только и буду что ценами на сайте заниматься.

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


  • 2 недели спустя...
On 16.11.2017 at 12:18 PM, toporchillo said:

Вы каким модулем YML формируете? Если моим, то я знаю, как исправить. А если Y.CMS, то с них спрашивайте.

В личку

я написал в личку, только Вы не отвечаете

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


Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

×
×
  • Создать...

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

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