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

Lori
05 февраля 2021, 18:52
0
к сожалению эффекта никакого
Артур Шевченко
05 февраля 2021, 17:43
-1
1. Создать assets/components/minishop2/js/web/custom.js
2. Скопировать содержимое из assets/components/minishop2/js/web/default.js
3. Вставить в конце
miniShop2.Callbacks.Cart.add.response.success = function() {    
    $( "#shopModal" ).show();    
    $('.close').click(function(){
           $('#shopModal').hide();
        });    
    $(document).click(function(event) {
        if ($(event.target).closest(".modal-dialog").length) return;
        $("#shopModal").hide("slow");
        event.stopPropagation();
      });
    }
4. Установить системную настройку ms2_frontend_js в значение [[+jsUrl]]web/custom.js
5. Радоваться.
Артур Шевченко
05 февраля 2021, 17:04
-1
Напишите свой сниппет.
Андрей
05 февраля 2021, 16:59
0
не, связи, модификации это все не то. Администрировать с ума сойдете. Представьте что тканей порядка 10к… И они довольно часто переходят из категории в категорию… И это все надо сделать по всем товарам.
Поэтому весь вопрос в том, как получить модификации, все остальное работает правильно. Может не через pdoResources делать можно а иначе, если есть мысли буду признателен.
Артур Шевченко
05 февраля 2021, 16:55
-1
Понятно, если структуру оставлять такую, то тогда не получится использовать модификации, а если использовать модификации, то надо менять структуру. Другими словами если использовать модификации, то Диван это товар, ткань это опция, причём тканей должно быть столько сколько есть комбинаций ткань+категория ткани, что скорее всего будет неудобно администрировать. Поэтому надо писать свою логику. Я бы связал диван и ткани через Связи дальше написал бы js который формировал как бы комплект товаров и при добавлении в корзину в плагине менял стоимость.
Sergey
05 февраля 2021, 16:24
0
UPD.
Прошу прощения, упустил параметр
форма продукта — msoptionsprice-product
прописал его, все отлично работает.
Sergey
05 февраля 2021, 16:12
0
Здравствуйте, скажите пожалуйста, в чем может быть причина?
Инициализация прописана, классы для смены значения прописаны.
В консоли ошибок нет, в «Журнале ошибок» в MODX тоже ошибок нет, при переключении не обновляется значения
Nik
Nik
05 февраля 2021, 15:45
0
Согласен, есть и минусы в этом. Но точно также можно продизлайкать/пролайкать и «свежеиспеченные» комменты, для накрутки.
Дима Сайт old см. профиль
05 февраля 2021, 15:36
0
Отключение возможности менять карму это мне кажется необходимость, избавляющая от накруток и перегруза модератора. Чтобы некто не мог попросить коллег на новой работе пролайкать все мои старые комменты и продизлайкать вон того парня. Я бы это не трогал, хоть есть и побочный эффект который вы описали.
Nik
Nik
05 февраля 2021, 15:30
+7
Плохо (на мой взгляд) что нельзя добавить плюсик в карму по прошествии времени. Например я нашел подсказку для своей проблемы в решении, которое было опубликовано много раньше чем я здесь появился, потянулась рука для плюсика в карму — а стрелочка уже неактивна…
Андрей
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:42
-1
И у одной ткани — товара — может быть до 8 значений в опции Категория ткани, так?
Андрей
05 февраля 2021, 14:41
0
Значение опции = Наименованию категории в дереве
Артур Шевченко
05 февраля 2021, 14:38
-1
Это я понял, что показывает опция? отношение к категории в дереве?
Андрей
05 февраля 2021, 14:34
0
В дереве категории — это ресурсы типа Категория товаров.
В опции — это опция типа «Список с автодополнением»
Артур Шевченко
05 февраля 2021, 14:33
-1
Вы не ответили на мой вопрос, а это важно для понимания, Категории в дереве и Категории в опциях это разные сущности?
Andrei
05 февраля 2021, 14:19
0
Здесь написано много хороших вещей для доработки. Меня бы как владельца магазина, который иногда что-то дорабатывает, очень интересует вот что:
1. Нормальный Поиск. Старый был тоже «такое», но там были сортировки, вес и тп. Сейчас вообще аут
2. Здесь собрано много крутейших готовых решений и просто каких-то небольших примеров и кусочков, которые нужно «условно» валидировать.
3. Ну и фриланс фрилансом, но в разделе Работа как-то переделать саму модель. Вы ведь сами на этом можете зарабатывать, как на комиссии, так и решениями. Но должен быть как-то рейтинг и у заказчика, и у специалиста. Чтоб были гарантии результата
Андрей
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;

}