Товары с разными параметрами shopkeeper+migx



  • Здрасьте все.

    Возможно на старом форуме эта тема уже поднималась, но поскольку он умер...
    Так вот.
    Есть shopkeeper+migx.
    Каталог №1 с товарами - пакет shop, класс shopContent.
    Вывожу каталог №1 с товарами:

    [[!getPage?
    &element=`getProducts`  
    &limit=`12`
    &className=`shopContent`
    &packageName=`shop`
    &tpl=`product`
    ]]
    

    Есть ещё другой каталог №2 с товарами, у которых другие параметры, поэтому они в другой таблице migx с пакетом lastshop и классом lastshopContent
    Его я вывожу так:

    [[!getPage?
    &element=`getProducts`  
    &limit=`12`
    &className=`lastshopContent`
    &packageName=`lastshop`
    &tpl=`product`
    ]]
    

    Но, естественно, страницы товаров по ссылкам из этого каталога отсутствуют, поскольку в плагине shk_contextSwitch параметры prodClassName и prodPackageName соответственно ShopContent и shop.
    Полагаю, нужно создать набор параметров плагина shk_contextSwitch (допустим last) со значениями lastshopContent и lastshop и выводить каталог №2 применяя этот набор. Но как это сделать. Никак не могу додумать - не хватает опыта.
    Пробовал так:

    [[!getPage?
    &element=`getProducts`  
    &limit=`12`
    &context=`last`
    &className=`lastshopContent`
    &packageName=`lastshop`
    &tpl=`product`
    ]]
    

    но ничего не получается...


  • Администраторы

    Нужно в шаблоне категории товаров добавить параметры:
    prodPackageName - имя пакета товаров
    prodClassName - имя класса товаров
    prodTemplateId - ID шаблона товаров

    Если две таблицы, то будет два разных шаблона категорий товаров с разными параметрами.



  • То есть категорию выводить так?

    [[!getPage?
    &element=`getProducts`  
    &limit=`12`
    &prodPackageName=`shopstab`
    &prodClassName=`shopStabContent`
    &prodTemplateId=`4`
    &className=`shopStabContent`
    &packageName=`shopstab`
    &orderby=`{"pagetitle":"DESC"}`
    &tpl=`product`
    &depth=`2`
    ]]
    

    Попробовал — не получилось. Страниц товаров так и нет.


  • Администраторы

    Нет, не так. Параметры для шаблона категории нужно задавать в админке. "Элементы" -> Шаблон -> вкладка "Параметры".
    И при чём тут getPage? Вы же выше писали, что всё выводится, только не открывается страница товара.



  • Значит getPage не трогаю, дело не в нём?
    Оставляю вывод категории в шаблоне таким:

    [[!getPage?
    &element=`getProducts`  
    &limit=`12`
    &className=`lastshopContent`
    &packageName=`lastshop`
    &orderby=`{"pagetitle":"DESC"}`
    &tpl=`product`
    &depth=`2`
    ]]
    

    в параметрах категории задал:
    prodPackageName - lastshop
    prodClassName - lastshopContent
    prodTemplateId — 4

    но страницы с товарами так и отсутствуют, хотя пути у них верные — типа «категория/товар.html»


  • Администраторы

    Оставляю вывод категории в шаблоне таким:

    Давайте будем выражаться более точно. Не вывод категории, а вывод товаров категории. Не параметры категории, а параметры шаблона категории.

    Правильно ли я понял, что товары у вас выводятся, но когда переходите по ссылке на страницу товара, то получаете 404?



  • @Andchir сказал Товары с разными параметрами shopkeeper+migx:

    Оставляю вывод категории в шаблоне таким:

    Давайте будем выражаться более точно. Не вывод категории, а вывод товаров категории. Не параметры категории, а параметры шаблона категории.

    Так точно

    Правильно ли я понял, что товары у вас выводятся, но когда переходите по ссылке на страницу товара, то получаете 404?

    Совершенно верно


  • Администраторы

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



  • 0_1461761907897_2016-04-27_15-56-19.png
    0_1461761958976_2016-04-27_15-59-06.png


  • Администраторы

    Какая версия Шопкипера? У категории установлен флажок "Контейнер"?
    Покажите XML схему таблицы товаров.



  • shopkeeper3-3.2.3
    да

    	<?xml version="1.0" encoding="UTF-8"?>
    	<model package="shopstab" baseClass="xPDOObject" platform="mysql" defaultEngine="MyISAM" version="1.1">
    	    <object class="ShopStabContent" table="shopstab_content" extends="xPDOSimpleObject">
    		<field key="resource_id" dbtype="int" precision="10" phptype="int" null="false" index="index" />
    		<field key="priceold" dbtype="float" null="true" default="" />
    		<field key="gallery" dbtype="text" null="true" default="" />
    		<field key="faze" dbtype="text" null="true" default="" />
    		<field key="power" dbtype="double" null="true" default="" />
    		<field key="voltagein" dbtype="text" null="true" default="" />
    		<field key="voltageout" dbtype="text" null="true" default="" />
    		<field key="weight" dbtype="float" null="true" default="" />
    		<field key="length" dbtype="float" null="true" default="" />
    		<field key="width" dbtype="float" null="true" default="" />
    		<field key="height" dbtype="float" null="true" default="" />
    		<field key="country" dbtype="text" null="true" default="" />
    		<field key="guarant" dbtype="text" null="true" default="" />
    		<field key="manuf" dbtype="text" null="true" default="" />
    		<field key="pagetitle" dbtype="varchar" precision="255" phptype="string" null="false" default="" index="fulltext" indexgrp="shopstab_content_ft_idx" />
    		<field key="longtitle" dbtype="varchar" precision="255" phptype="string" null="false" default="" index="fulltext" indexgrp="shopstab_content_ft_idx"  />
    		<field key="alias" dbtype="varchar" precision="255" phptype="string" null="true" default="" index="index" />
    		<field key="deleted" dbtype="int" precision="10" phptype="integer" null="false" default="0" />
    		<field key="deletedon" dbtype="int" precision="20" phptype="timestamp" null="false" default="0" />
    		<field key="deletedby" dbtype="int" precision="10" phptype="integer" null="false" default="0" />
    		<field key="introtext" dbtype="text" phptype="string" null="true" index="fulltext" indexgrp="shopstab_content_ft_idx" />
    		<field key="content" dbtype="mediumtext" phptype="string" null="true" index="fulltext" indexgrp="shopstab_content_ft_idx" />
    		<field key="template" dbtype="int" precision="10" phptype="integer" null="false" default="0" />
    		<field key="menuindex" dbtype="int" precision="10" phptype="integer" null="false" default="0" />
    		<field key="editedon" dbtype="int" precision="20" phptype="timestamp" null="false" default="0" />
    		<field key="editedby" dbtype="int" precision="10" phptype="integer" null="false" default="0" />
    		<field key="createdon" dbtype="int" precision="20" phptype="timestamp" null="false" default="0" />
    		<field key="createdby" dbtype="int" precision="10" phptype="integer" null="false" default="0" />
    		<field key="publishedon" dbtype="int" precision="20" phptype="timestamp" null="false" default="0" />
    		<field key="unpublishedon" dbtype="int" precision="20" phptype="timestamp" null="false" default="0" />
    		<field key="published" dbtype="tinyint" precision="1" attributes="unsigned" phptype="boolean" null="false" default="0" index="index" />
    		<field key="publishedby" dbtype="int" precision="10" phptype="integer" null="false" default="0" />
    		<field key="hidemenu" dbtype="tinyint" precision="1" attributes="unsigned" phptype="integer" null="false" default="0" index="index" />
    		
    		<field key="price" dbtype="float" phptype="float" null="true" default="0" />
    		<field key="image" dbtype="varchar" precision="255" null="true" default="" />
    		<field key="inventory" dbtype="varchar" precision="255" phptype="string" null="false" default="" />
    		<field key="articul" dbtype="varchar" precision="255" phptype="string" null="false" default="" />
    		<field key="param1" dbtype="varchar" precision="255" phptype="string" null="false" default="" />
    		
    		<index alias="resource_id" name="resource_id" primary="false" unique="false" type="BTREE">
    	            <column key="resource_id" length="" collation="A" null="true" />
    	        </index>
    		<index alias="alias" name="alias" primary="false" unique="false" type="BTREE">
    	            <column key="alias" length="" collation="A" null="true" />
    	        </index>
    	        <index alias="published" name="published" primary="false" unique="false" type="BTREE">
    	            <column key="published" length="" collation="A" null="false" />
    	        </index>
    		<index alias="hidemenu" name="hidemenu" primary="false" unique="false" type="BTREE">
    	            <column key="hidemenu" length="" collation="A" null="false" />
    	        </index>
    		
    		<index alias="shopstab_content_ft_idx" name="shopstab_content_ft_idx" primary="false" unique="false" type="FULLTEXT">
    	            <column key="pagetitle" length="" collation="A" null="false" />
    	            <column key="longtitle" length="" collation="A" null="false" />
    	            <column key="introtext" length="" collation="A" null="true" />
    	            <column key="content" length="" collation="A" null="true" />
    	        </index>
    		
    	    </object>
    	</model>

  • Администраторы

    Проверьте в БД чтобы у товаров было
    published = 1
    deleted = 0



  • @Andchir сказал Товары с разными параметрами shopkeeper+migx:

    Проверьте в БД чтобы у товаров было
    published = 1
    deleted = 0

    published = 1 deleted = 0

    если это немного приблизит решение, то мне удавалось выводить страницы товаров, когда в плагине shk_contextSwitch я задавал параметры prodClassName=ShopStabContent и prodPackageName=shopstab
    Но при этом, естественно, пропадали страницы товаров пакета shop

    И вот ещё какая особенность.
    Сейчас попробовал опять поменять параметры плагина shk_contextSwitch, чтобы вывести страницы товаров пакета shopstab. Результат - отрицательный. Удалил параметры prodPackageName, prodClassName, prodTemplateId шаблона категории и страницы товаров пакета shopstab появились, ну а товаров пакета shop само собой пропали.


  • Администраторы

    Можете скинуть мне в чатик доступы в админку, я посмотрю. Думаю так было бы быстрее.



  • скинул в чат


  • Администраторы

    В параметре шаблона "prodClassName" почему-то у вас стояло "shopStabContent" а в MIGX (в XML данном выше тоже видно) это название - ShopStabContent (с большой буквы).



  • Большое спасибо



Похоже, подключение к Форум | MODX Shopkeeper было разорвано, подождите, пока мы пытаемся восстановить соединение.