Андрей

Андрей

С нами с 22 сентября 2014; Место в рейтинге пользователей: #161
Андрей
22 июня 2022, 17:02
0
Почему-то в файле /assets/components/msfavorites/js/default.min.js присутствует ошибка:
Uncaught TypeError: Cannot read properties of null (reading 'content')
Вроде как он там пытается мета теги получить — в head они есть.
как тогда устранить проблему?
Андрей
31 марта 2022, 19:24
0
Пишет, что не может найти чанк формы. После обновления на MODX 3
Андрей
28 декабря 2021, 18:17
0
Добрый день. Подскажите, получилось у вас решить задачу со slick slider?
Андрей
04 декабря 2021, 13:52
0
Получается проще реально не заморачиваться, а размножить товары и допустим скриптом ценник тянуть с одного какого-то родительского товара?
Андрей
04 декабря 2021, 13:44
0
Да да)) Вы все верно расписали… Веточка для SEO как раз наша ))
Андрей
04 декабря 2021, 13:08
0
Мысль с хлебными крошками тоже верная, но потом. Хочу менять название товара в зависимости от местонахождения. Есть некие Универсиаде Еве товары, и мы хотим выводить их названия, в зависимости от категории по принципу: «название товара» для «название категории»
Андрей
04 декабря 2021, 11:05
0
Это да, категории я получить могу, а вот как получить именно ту категорию в которую я заходил? Ведь в качестве parent у него основная категория, а дополнительные я получаю массивом, без привязки к конкретной той, в которой я нахожусь…
Вот в этом загвоздка.
Андрей
23 ноября 2021, 07:56
0
И на гитхаб было написано, и вызовы формы стандартные из документации, и форма стандартная… В принципе не заморачиваюсь этим, так как решил проблемы без использования компонента. Просто увидел тему и тоже написал, подтверждая что проблема носит массовый характер. Вы постепенно увидите, что сайты на которых есть связка этих компонентов будут бомбардироваться спамом все больше и больше.
Андрей
22 ноября 2021, 20:39
0
У меня на нескольких сайтах стоит reCaptchaV3 — спам летит за сдрасти…
на парочке сайтов при включенном компоненте вообще формы не отпарпвляются, пишет ошибку в форме, при этом сам гугл пишет «Мы обнаружили, что ваш сайт не проверяет токены reCAPTCHA. Подробную информацию вы найдете на нашем сайте для разработчиков.»
Связывался с разработчиком — помощи никакой не дождался, резюме такое — у меня все ОК, разбирайтесь сами…
Андрей
04 апреля 2021, 11:21
0
Почему то не хочет делать выгрузку.
Вот так висит долго-долго: prnt.sc/113s9zs
Андрей
17 марта 2021, 21:17
0
Да, проблема была в версии PHP 5.6
Спасибо большое!
Андрей
17 марта 2021, 09:46
0
Не знаю, с обновлением связано или нет. Но вчера обновился и вылезает теперь такая ошибка:
Parse error: syntax error, unexpected '=' in /core/cache/includes/elements/modsnippet/20.include.cache.php on line 111
на 111 строке такая конструкция:
[$operator, $key] = $components;
Меняю на
[$operator, $key] == $components;
все работает, но до следующей очистки кеша.
Помогите пожалуйста решить проблему
Андрей
05 февраля 2021, 16:59
0
не, связи, модификации это все не то. Администрировать с ума сойдете. Представьте что тканей порядка 10к… И они довольно часто переходят из категории в категорию… И это все надо сделать по всем товарам.
Поэтому весь вопрос в том, как получить модификации, все остальное работает правильно. Может не через pdoResources делать можно а иначе, если есть мысли буду признателен.
Андрей
05 февраля 2021, 14:52
0
1. Товар Диван Амстердам. У него есть опция Категории тканей, со значениями: Категория 1, Категория 2, Категория 3 (для примера)
2. Есть в дереве ресурсов такая структура, как вы писали выше:
— Категория-1
----Ткань-1
----Ткань-2
----Ткань-3
— Категория-2
----Ткань-4
----Ткань-5
----Ткань-6
— Категория-3
----Ткань-7
----Ткань-8
----Ткань-9
Товар-ткань в данном случае лишь для удобства структурирования — он может быть и простым ресурсом. Главное — внутри него есть галерея с фото тканей.
3. При клике в карточке товара Дивана по кнопке выбора ткани открывается модальное окно в которой в виде табов подгружаются категории в каждом из табов идут галереи из ресурсов, дочерних к данной категории.

Пример в скринах
prnt.sc/ye2m65
prnt.sc/ye2o7m
prnt.sc/ye2q5p
Андрей
05 февраля 2021, 14:41
0
Значение опции = Наименованию категории в дереве
Андрей
05 февраля 2021, 14:34
0
В дереве категории — это ресурсы типа Категория товаров.
В опции — это опция типа «Список с автодополнением»
Андрей
05 февраля 2021, 14:12
0
Выкладываю свой полный код, помогите понять почему msOptionPrice своим плагином перебивает мой, приоритеты у моего стоят выше

<?php
$plamgasCatsId = 10535;
$target = 6;

switch ($modx->event->name) {
	
	case 'msOnBeforeAddToCart':
		
    
	$products = $modx->getObject('msProduct', $product->get('id'));
	

    		if ($products->get('parent') == $plamgasCatsId) {
    			
    			$price_product_id = $products->get('price_id_product');
				$para = $products->get('para')[0];

    			foreach ($price_product_id as $product_id) {
					$res = $modx->getObject('msProduct',$product_id);
						if ($res) {
							$price_sostav = $res->get('price');
							$price_sum += $price_sostav;
							if ($para[0] == 1) {
								$price_sum = $price_sum*2;
							}
						}
				}
				
				$price_sale = $price_sum * 0.95;
    			
    		}
    		
    		else {
    			
    				$pids = $modx->getParentIds($products->get('id'), 10, array('context' => 'web'));
	    			if (in_array($target, $pids)) {
	    				$price_sale = $product->get('price') * 0.95;
	    			}
	    			
	    		
    		}
    		
    		$product->set('price', $price_sale);
    
    break;

}
Андрей
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, 12:58
0
Те же, и называются также. Но в дере допустим 13 категорий, а у товаров может быть только 8, значит в опции у него будет до 8 категории значения.
Хотя это редко. В основном везде у всех полный перечень. да и опции ввелись только из-за того, что наценка разная от товара к товару.