Всего 125 660 комментариев

Henk Everts
05 февраля 2021, 13:42
+4
Привет друзья!

We're going to investigate how we can add realtime Russian translations to the livestream of the event. Please contact me if you have any ideas on this or when you want to offer your help: henk@sterc.com

Привет из Нидерландов!
Андрей
05 февраля 2021, 13:39
0
Принцип такой:
Свой модификатор обходит значения опции и по названию находит ID ресурсов.
Далее из них формируются табы
{var $tabs = $_modx->getResources(
                        [
                            'published' => 1,
                            'deleted' => 0,
                            'id:IN' => $_modx->resource.color|getPageIDsByPagetitle,
                        ],
                        [
                        'class_key' => 'msCategory',
                        'sortby' => 'menuindex',
                        'sortdir' => 'ASC',
                        'limit' => 0,
                        'select' => 'id,pagetitle'
                        ]
                    )}

                    <ul class="fabric-tabs">
                        {foreach $tabs as $tab}
                            <li class="tab-link {$tab@index == 0 ? 'current' : ''}" data-tab="tab-{$tab.id}">{$tab.pagetitle}</li>
                        {/foreach}
                    </ul>
А уже внутри таба выдергиваются ресурсы (ткани) и их галереи
Вот кусок кода, в котором немного иная логика — ценник единый на все товары и поэтому задается в TV поле категории. А мне нужно сейчас перевести ее на модификации
{if $.post.id != ''}
    {'!pdoResources'|snippet:[
        'parents' => $.post.id,
        'class' => 'msProduct'
        'where' => ['class_key' => 'msProduct'],
        'limit' => 0,
        'leftJoin' => [
            'TVCategory' => [
                'class' => 'modTemplateVarResource',
                'on' => 'msProduct.parent = TVCategory.contentid AND TVCategory.tmplvarid = 6',
            ],
            "fabricType" => [
                "class" => "msProductOption",
                "on" => "fabricType.key = 'tkan_type' and fabricType.product_id = msProduct.id"
            ]
        ],
        'select' => 'msProduct.id,parent,pagetitle,TVCategory.value as category_price, fabricType.value as fabric_type',
        'tpl' => '@INLINE
            <div class="select-color-gallery" data-type="{$fabric_type}">
                {$category_price|setPlaceholder:"category_price"}
                {"!msGallery"|snippet:[
                    "product" => $id,
                    "tpl" => "tpl.selectFabric",
                ]}
            </div>
        ',
    ]}
{/if}
Александр
05 февраля 2021, 13:38
0
Спасибо, воспользовался ссылкой, все встало корректно и работает.
Scorp Satex
05 февраля 2021, 13:22
0
Похоже что нет.

github.com/modxcms/revolution/pull/15335
Артур Шевченко
05 февраля 2021, 13:19
-1
Если Категории в дереве и Категории в опциях это разные сущности, то они должны называться по-разному, если одинаковые, то зачем их дублировать?
Артур Шевченко
05 февраля 2021, 13:17
-1
А почему категории в опции называются так же как и категории в дереве и при этом вы говорите. что товар одновременно может быть только в одной категории, хотя в опции их может быть до 8?
Игорь Терентьев
05 февраля 2021, 13:12
0
Теперь есть событие msOnGetProductFields:
<?php
switch($modx->event->name) { 
    case 'msOnGetProductFields':
        $returned_values = & $modx->event->returnedValues;
        $values =  $modx->event->params['data'];
          
        $returned_values['price'] = $values['price'] * 2;
        $returned_values['old_price'] = $values['price'] * 3;
        $returned_values['article'] = 'custom_article';
        $returned_values['weight'] = 222;
    	break;
}
Андрей
05 февраля 2021, 12:58
0
Те же, и называются также. Но в дере допустим 13 категорий, а у товаров может быть только 8, значит в опции у него будет до 8 категории значения.
Хотя это редко. В основном везде у всех полный перечень. да и опции ввелись только из-за того, что наценка разная от товара к товару.
Артур Шевченко
05 февраля 2021, 12:55
-1
А в опции Категории тканей какие категории перечислены, не те же, что в дереве?
Дмитрий
05 февраля 2021, 12:54
0
У меня вообще нет компонента SeoFilter ))
Сергей
05 февраля 2021, 12:53
0
Добрый день! Есть возможность сохранять в формате word?
Андрей
05 февраля 2021, 12:51
0
нет, ткани могут быть только в одной категории.
Артур Шевченко
05 февраля 2021, 12:50
-1
И одна ткань может быть в нескольких категориях?
Дмитрий
05 февраля 2021, 12:49
0
Кроме стилей особо ничего не менял)
tpl.mFilter2.filter.number
<div class="form-group col-md-6">
	<label for="mse2_[[+table]][[+delimeter]][[+filter]]_[[+idx]]">[[+title]]
		<input type="text" name="[[+filter_key]]" id="mse2_[[+table]][[+delimeter]][[+filter]]_[[+idx]]" value="[[+value]]" class="form-control input-sm" />
	</label>
</div>
tpl.mFilter2.filter.slider
<fieldset id="mse2_[[+table]][[+delimeter]][[+filter]]">
	<h4 class="filter_title">[[%mse2_filter_[[+table]]_[[+filter]]]]</h4>
	<div class="mse2_number_inputs">
		[[+rows]]
	</div>
<div class="mse2_number_slider"></div>
</fieldset>
Дмитрий
05 февраля 2021, 12:46
0
0.0001230: pdoTools loaded.
0.0002580: Conditions prepared
0.0000360: xPDO query object created
0.0001879: leftJoined msProductData as Data
0.0001261: leftJoined msVendor as Vendor
0.0000019: Grouped by msProduct.id
0.0000560: Added selection of msProduct: SQL_CALC_FOUND_ROWS `id`, `type`, `contentType`, `pagetitle`, `longtitle`, `description`, `alias`, `alias_visible`, `link_attributes`, `published`, `pub_date`, `unpub_date`, `parent`, `isfolder`, `introtext`, `richtext`, `template`, `menuindex`, `searchable`, `cacheable`, `createdby`, `createdon`, `editedby`, `editedon`, `deleted`, `deletedon`, `deletedby`, `publishedon`, `publishedby`, `menutitle`, `donthit`, `privateweb`, `privatemgr`, `content_dispo`, `hidemenu`, `class_key`, `context_key`, `content_type`, `uri`, `uri_override`, `hide_children_in_tree`, `show_in_tree`, `properties`
0.0000250: Added selection of msProductData: `article`, `price`, `old_price`, `weight`, `image`, `thumb`, `vendor`, `made_in`, `new`, `popular`, `favorite`, `tags`, `color`, `size`, `source`
0.0000191: Added selection of msVendor: `name` AS `vendor.name`, `resource` AS `vendor.resource`, `country` AS `vendor.country`, `logo` AS `vendor.logo`, `address` AS `vendor.address`, `phone` AS `vendor.phone`, `fax` AS `vendor.fax`, `email` AS `vendor.email`, `description` AS `vendor.description`, `properties` AS `vendor.properties`
0.0000429: Processed additional conditions
0.0002320: Added where condition: class_key=msProduct, msProduct.id:IN(60,61,62,63,64,65,66,67,68,69,70,71,72,73), msProduct.published=1, msProduct.deleted=0
0.0000589: Sorted by `Data`.`price` asc, 
0.0000050: Limited to 20, offset 0
0.0002968: SQL prepared "SELECT SQL_CALC_FOUND_ROWS `msProduct`.`id`, `msProduct`.`type`, `msProduct`.`contentType`, `msProduct`.`pagetitle`, `msProduct`.`longtitle`, `msProduct`.`description`, `msProduct`.`alias`, `msProduct`.`alias_visible`, `msProduct`.`link_attributes`, `msProduct`.`published`, `msProduct`.`pub_date`, `msProduct`.`unpub_date`, `msProduct`.`parent`, `msProduct`.`isfolder`, `msProduct`.`introtext`, `msProduct`.`richtext`, `msProduct`.`template`, `msProduct`.`menuindex`, `msProduct`.`searchable`, `msProduct`.`cacheable`, `msProduct`.`createdby`, `msProduct`.`createdon`, `msProduct`.`editedby`, `msProduct`.`editedon`, `msProduct`.`deleted`, `msProduct`.`deletedon`, `msProduct`.`deletedby`, `msProduct`.`publishedon`, `msProduct`.`publishedby`, `msProduct`.`menutitle`, `msProduct`.`donthit`, `msProduct`.`privateweb`, `msProduct`.`privatemgr`, `msProduct`.`content_dispo`, `msProduct`.`hidemenu`, `msProduct`.`class_key`, `msProduct`.`context_key`, `msProduct`.`content_type`, `msProduct`.`uri`, `msProduct`.`uri_override`, `msProduct`.`hide_children_in_tree`, `msProduct`.`show_in_tree`, `msProduct`.`properties`, `Data`.`article`, `Data`.`price`, `Data`.`old_price`, `Data`.`weight`, `Data`.`image`, `Data`.`thumb`, `Data`.`vendor`, `Data`.`made_in`, `Data`.`new`, `Data`.`popular`, `Data`.`favorite`, `Data`.`tags`, `Data`.`color`, `Data`.`size`, `Data`.`source`, `Vendor`.`name` AS `vendor.name`, `Vendor`.`resource` AS `vendor.resource`, `Vendor`.`country` AS `vendor.country`, `Vendor`.`logo` AS `vendor.logo`, `Vendor`.`address` AS `vendor.address`, `Vendor`.`phone` AS `vendor.phone`, `Vendor`.`fax` AS `vendor.fax`, `Vendor`.`email` AS `vendor.email`, `Vendor`.`description` AS `vendor.description`, `Vendor`.`properties` AS `vendor.properties` FROM `modx_site_content` AS `msProduct` LEFT JOIN `modx_ms2_products` `Data` ON `msProduct`.`id` =  `Data`.`id` LEFT JOIN `modx_ms2_vendors` `Vendor` ON Data.vendor=Vendor.id WHERE  ( `msProduct`.`class_key` = 'msProduct' AND `msProduct`.`id` IN (60,61,62,63,64,65,66,67,68,69,70,71,72,73) AND `msProduct`.`published` = 1 AND `msProduct`.`deleted` = 0 )  GROUP BY msProduct.id ORDER BY `Data`.`price` asc LIMIT 20 "
0.0013540: SQL executed
0.0000770: Total rows: 14
0.0002120: Rows fetched
0.0003951: Returning raw data
0.0012510: Checked the active modifiers
0.0103419: Loaded "modChunk" with name "msProducts.row"
0.0024240: Compiled Fenom chunk with name "modchunk/32"
0.0095193: Time to load products options
0.0900710: Total time
9 437 184: Memory usage
0.0054438: pdoTools loaded
0.0046771: Loaded "modSnippet" with name "msProducts"
0.0921800: Created inline "modChunk" with name "e6747421ac951eec87076a3f44c6a184"
0.1023679: Total time
9 699 328: Memory usage
0.0025401: pdoTools loaded.
0.0079219: Fetched ids for building filters: "60,61,62,63,64,65,66,67,68,69,70,71,72,73" from element "msProducts"
0.0000100: Total number of results: 14
0.0000029: Getting filters for ids: "60,61,62,63,64,65,66,67,68,69,70,71,72,73"
0.0025041: Total number of filters: 16
0.0103490: Suggestions retrieved.
0.1068070: Fired paginator: "pdoPage"
0.0000069: Filters retrieved
0.0009429: Loaded "modChunk" with name "tpl.mFilter2.filter.number"
0.0010340: Loaded "modChunk" with name "tpl.mFilter2.filter.slider"
0.0011570: Loaded "modChunk" with name "tpl.mFilter2.filter.checkbox"
0.0232339: Loaded "modChunk" with name "tpl.mFilter2.filter.outer"
0.0003052: Filters templated
0.0000060: Total filter operations: 16
0.1570520: Total time
9 699 328: Memory usage
Андрей
05 февраля 2021, 12:46
0
Да, все верно
Артур Шевченко
05 февраля 2021, 12:30
-1
А в самом шаблоне слайдера всё ок? Может это js шалит?
Артур Шевченко
05 февраля 2021, 12:28
-1
Структура каталога такая
— Категория-1
----Ткань-1
----Ткань-2
----Ткань-3
— Категория-2
----Ткань-4
----Ткань-5
----Ткань-6
?
Иван Бочкарев
05 февраля 2021, 12:04
1
+1
Hey! We are waiting for a full announcement. Thanks!
Роман
05 февраля 2021, 12:03
0
Попробуй отключи SeoFilter может в нем причина кроется.