Последние темы


Не добавляет в корзину с главной страницы, ошибок JS нет

  • Не добавляет товар в корзину с главной страницы. С остальных всех страниц добавляет. Ошибок или предупреждений в JS никаких нет.
    MODx+SHK3 скачан здесь как демо-сайт

    Товары в ресурсах MODx. На странице каталога вызов через tmCatalog, а на главной странице вывожу так:

    [[!getProducts?
    	&className=`modResource`
    	&parents=`14`
    	&depth=`2`
    	&includeTVList=`articul,image,price`
    	&includeTVs=`1`
    	&tpl=`product_box2`
    	&where=`{"template":8}`
    	&limit=`3`
    ]]
    

    Товар двигается к корзине, крутится крутилка и ничего не происходит. С вариантами вывода уже экспериментировал по-разному, ничего не меняется.

  • @releon До этого устанавливали какие нибудь компоненты?

  • @jagger Нет, только то что было в стоке, после этого обновил MODx до последней версии и все компоненты до последней версии

  • @releon Просто, насколько я помню, например seoPro конфликтует с Shopkeeper-ом и надо одну строчку у него поменять

  • @jagger не, точно не он, разве что если только новая версия одного из приложений конфликт какой-то вызывает. Попробую заново установить, без обновления проверить как работает

  • Покажите чанк "product_box2".

  • @andchir чанк оригинальный, никаких изменений не вносил. С этим же чанком все работает на странице каталога

    <div class="col-xxs-12 col-xs-6 col-sm-6 col-md-4">
        <div class="thumbnail shk-item">
            <a href="[[~[[+id]]?&scheme=`abs`]]">
                <img class="shk-image" src="[[phpthumbon?input=`assets/files/[[+tv.image]]`&options=`w=400&h=300&bg=ffffff&zs=1`]]" alt="[[+pagetitle]]">
            </a>
            <div class="caption text-center">
                <h3>[[+pagetitle]]</h3>
                <p>[[+introtext]]</p>
                <div class="product-price no-margin-top">
                    <span class="shk-price">[[+tv.price:shk_curr_rate:num_format]]</span>
                    [[+shk_currency]]
                </div>
                <div>
                    <form action="[[~[[*id]]? &scheme=`abs`]]" method="post">
                        <input type="hidden" name="shk-id" value="[[+id]]" />
                        <input type="hidden" name="shk-name" value="[[+pagetitle]]" />
                        <input type="hidden" name="shk-count" value="1" />
                        <div class="btn-group" role="group">
                            <a href="[[~[[+id]]?&scheme=`abs`]]" class="btn btn-success" role="button">Подробнее</a>
                            <button type="submit" class="btn btn-default" data-toggle="tooltip" data-placement="top" title="В корзину">
                                <i class="icon" data-icon="&#xe052"></i>
                            </button>
                        </div>
                    </form>
                </div>
            </div>
        </div>
    </div>
    [[+num:mod=`2`:is=`0`:then=`
    <div class="clearfix visible-xs-block visible-sm-block"></div>
    `:else=``]]
    [[+num:mod=`3`:is=`0`:then=`
    <div class="clearfix visible-md-block visible-lg-block"></div>
    `:else=``]]```
  • На демо-сайте добавление товаров в корзину на главной работает. Разбирайтесь что вы меняли. Или дайте ссылку чтобы увидеть.

 

Последние комментарии

  • Y

    В чем может быть проблема?

    Читать далее
  • Y

    Big и Small Images могут быть от 1 до 10, Summary иногда имеет внутри текст и выглядит так:

    <Summary> <item>текст</item> </Summary>

    Читать далее
  • Y

    Не импортируются товары из Xml, вместо них выводит такие ошибки:

    Invalid argument supplied for foreach()
    SimpleXMLElement::xpath(): Invalid expression
    PHP warning: SimpleXMLElement::xpath(): xmlXPathEval: evaluation failed
    PHP warning: current() expects parameter 1 to be array, boolean given

    Вот как выглядит строка товара xml:
    <root>

    <Big_Images> <Big_Images0>url to img</Big_Images0> <Big_Images1>url to img</Big_Images0> </Big_Images> <Small_Images> <Small_Images0>url to img</Small_Images0> <Small_Images1>url to img</Small_Images1> </Small_Images> <Title>рандомное имя</Title> <Summary/> <Price>7.43</Price> <Main_Info><item>много html кода</item></Main_Info> </root>

    И вот сам php файл для импорта:

    <?php //разбивка по столбцам при импорте и экспорте (content|tv|category) //$cf_config['content_row'] = array( //array('Title',array('pagetitle','content')), //array('Title',array(43,'tv')), //array('Big_Images',array(44,'tv')), //array('Price',array(45,'tv')) //); //значения по умолчанию при импорте или проверка при экспорте $cf_config['imp_content_default'] = array( 'content' => array( 'deleted' => 0, 'published' => 1, 'description' => '', 'show_in_tree' => 0, 'class_key' => 'msProduct', 'template' => 8 // ID шаблона товара //'createdon' => strtotime("now") //'publishedon' => strtotime("now") //'pub_date' => strtotime("now") //'editedby' => 1 //'editedon' => strtotime("now") ), 'tv' => array( //7 => 0 ) ); //первая строка - названия полей $cf_config['include_captions'] = false; //число товаров импортируемых за один раз (загрузка по группам). 0 - не ограничивать. $cf_config['batch_import'] = 0; //разбивать по категориям $cf_config['include_categories'] = false; //удалять дочерние категории при очистке и обновлении каталога $cf_config['delete_subcategories'] = true; //по какому полю проверять соответствие товара при обновлении. false - не проверять (очистка категории при обновлении). $cf_config['imp_chk_field'] = 'pagetitle'; //проверять соответствие товара при обновлении по значению TV. Указать ID TV. false - не проверять (очистка категории при обновлении). $cf_config['imp_chk_tvid_val'] = false; //Добавлять товары, которые не найдены при обновлении по TV (imp_chk_tvid_val) или полю (imp_chk_field) $cf_config['imp_if_not_exist'] = false; //удалять HTML-теги при экспорте $cf_config['exp_strip_tags'] = false; //автоматически генерировать псевдоним (alias) при импорте //false - выключено; true - генерировать с переводом в транслит; 'notranslit' - генерировать без перевода в транслит. $cf_config['imp_autoalias'] = false; //Изменить значения поля для всех вложенных товаров до начала импорта. //Например можно отменить публикацию для всех товаров и публиковать только те, которые есть в новом прайс-листе. //первый массив - какие поля и на какие значения менять, второй массив - условия которые нужно проверять (можно сделать пустым) $cf_config['imp_before_change'] = false;//'[{"tv.inventory":0},{}]';//'[{"published":0},{"tv.pricename":"Поставщик1"}]';//false - для отмены //удалить файл после экспорта (скачивания) $cf_config['exp_delete_file'] = false; //кодировка CSV-файла при экспорте $cf_config['exp_csv_charset'] = 'UTF-8'; //'windows-1251' //Импортировать (обновлять) пустые значения $cf_config['imp_empty'] = true; //Имя файла процессора, который использовать для импорта. Если пусто, используется стандартный процессор "import". $cf_config['imp_custom_processor'] = ''; //путь (xpath) в XML структуре до товаров $cf_config['imp_xml_itemsparent_path'] = '';//'/catalog/shop/offers'; //Структура XML файла для импорта $cf_config['imp_xml_structure'] = <<<EOF <root> <Big_Images> <Big_Images0>tv44</Big_Images0> <Big_Images1>tv48</Big_Images1> <Big_Images2>tv49</Big_Images2> <Big_Images3>tv50</Big_Images3> <Big_Images4>tv51</Big_Images4> <Big_Images5>tv52</Big_Images5> <Big_Images6>tv53</Big_Images6> <Big_Images7>tv54</Big_Images7> <Big_Images8>tv55</Big_Images8> <Big_Images9>tv56</Big_Images9> </Big_Images> <Small_Images> <Small_Images0>tv47</Small_Images0> <Small_Images1>tv58</Small_Images1> <Small_Images2>tv59</Small_Images2> <Small_Images3>tv60</Small_Images3> <Small_Images4>tv61</Small_Images4> <Small_Images5>tv62</Small_Images5> <Small_Images6>tv63</Small_Images6> <Small_Images7>tv64</Small_Images7> <Small_Images8>tv65</Small_Images8> <Small_Images9>tv66</Small_Images9> </Small_Images> <Title>pagetitle</Title> <Summary> <item>tv57</item> </Summary> <Price>tv45</Price> <Main_Info> <item>tv46</item> </Main_Info> </root> EOF; //тестирование конфигурации (без записи в БД). Отчёты -> Журнал ошибок. $cf_config['imp_testmode'] = false; //функция для фильтрации значений при ИМПОРТЕ function filter_import($value_arr){ $output_arr = $value_arr; /* if(isset($output_arr['content']['pagetitle'])) $output_arr['content']['pagetitle'] = mb_strtoupper($output_arr['content']['pagetitle'], 'UTF-8'); */ return $output_arr; } //функция для фильтрации значений при ЭКСПОРТЕ function filter_export($value_arr,$doc_id=0){ $output_arr = $value_arr; //var_dump($value_arr,$output_arr); //exit; /* if(isset($output_arr['price'])) $output_arr[1] = floatval($output_arr[1]) - 200; */ return $output_arr; } ?>

    Читать далее
  • Начать нужно с документации. Потом открыть файл конфигурации. Потом можно на форуме почитать темы, связанные с CatalogFill.

    Читать далее