Вопросы

Где можно кастомизировать выпадающее меню mSearch2?

Приветствую всех!
Воскрешаю свой старый сайт на miniShop2
Возник вопрос, где можно изменить выпадающий список поиска mSearch2?
Либо задать шаблон. Среди чанков не могу найти данный список

Список появляется в коде в конце страницы в виде
  • и тд
Андрей
13 июня 2019, 20:24
modx.pro
1 370
0

Разная цена доставки от региона

Как установить разную цену доставки от региона покупателя? Понимаю что нужно расширить msDeliveryHandler. Но как получить переменную региона?

Заранее спасибо за ответ
Валерий
13 июня 2019, 17:18
modx.pro
886
0

Тип :number для TV в mFilter2 выдает значения через запятую, а не от-до

Доброго дня!

Не могу понять, прошу помочь: в mFilter2 вызываю фильтр по числовому TV, а он вместо диапазона выдает мне все значения, при попытке менять значения слайдером — подставляет в GET все числа через запятую.



В вызове :number указан:
filters' => '
       tv|options.area:number
',
Чанк использую стандартный со слайдером.
Альберт
13 июня 2019, 16:40
modx.pro
1 068
0

Помогите составить условие

Добрый день, Уважаемые форумчане!
Возник вопрос касаемо условия
Не знаю на что опираться в такой ситуации.

Создал интернет-магазин на Minishop2
В товарах нужно добавить в шапке сайта небольшой словосочетание «купить по низкой цене в Москве»
Можно добавить конечно к каждому товару отдельно, но это долго и товаров будет прилично…
Каким образом, можно составить в шапке сайта в метатеге условие типа — если это карточка товара, то выводить [[pagetitle]] купить по низкой цене в Москве, а если это обычная страница сайта — главная, каталог и тд то просто выводить [[pagetitle]]
Андрей
13 июня 2019, 15:55
modx.pro
757
0

Не отображаются доп поля в админке msFieldsManager

Добрый день!
Создал дополнительные поля в msFieldsManager
В админке почему-то в свойствах товара пусто.
В чем может быть проблема?
Ранее все показывалось.
На фронтэнде поля работают, в настройках minishop тоже поля прописаны для админки
Андрей
13 июня 2019, 12:05
modx.pro
1 250
0

Удалить все фото товара через API

Всем привет.
Простой вопрос поставил в тупик — как удалить через API все фото товара?
Я так понимаю такой процессор нужно запускать, но как туда переждать ID фоток зная ID товара?
$response = $modx->runProcessor('components/minishop2/processors/mgr/gallery/multiple',array(
		'method' => 'remove',
		'ids' => '1291,1292',
	));
Андрей
13 июня 2019, 11:38
modx.pro
2
2 191
0

После удаления товара через API корзине не обновляется

Добрый день.
Объясню сначала задачу:
1. При заказе товара с определенного раздела, в корзину нужно добавить товар с определенным ID (товар-доставка)
2. Также все должно корректно работать при обновлении корзины и удалении товаров из корзины (если в корзине не осталось товаров с данного раздела, то и доставку нужно убирать)
Но почему-то у меня доставка удаляется но висит в корзине до перезагрузки страницы.

Вот мой стремный код если есть решение изящнее то буду очень благодарен. По сути — нужно установить определенную сумму доставки при наличии в корзине товаров из определенного раздела (категории)

<?php
switch ($modx->event->name) {
	case 'msOnBeforeAddToCart':
		$delivery = 0;
		$parent = $product->get('parent');
		if ($parent == 49 || $parent == 51 || $parent == 52 || $parent == 53 || $parent == 54 || $parent == 55 || $parent == 56) {
			foreach($cart->get() as $key => $value){
				if ($value['id'] == 460) {
					$delivery++;
				}
			}
			if ($delivery == 0) {
				$cart->add(460);
			}
		}
	
	break;
	case 'msOnChangeInCart':
	case 'msOnRemoveFromCart':
		$delivery = 0;
		$parent = 0;
		foreach($cart->get() as $key => $value){
			if ($value['id'] == 460) {
				$delivery++;
				$keys = $key;
			}
			if ($product = $modx->getObject('msProduct', $value['id'])) {
				$pparent = $product->get('parent');
				if ($pparent == 49 || $pparent == 51 || $pparent == 52 || $pparent == 53 || $pparent == 54 || $pparent == 55 || $pparent == 56) {
					$parent++;
				}
			}
		}
		if ($delivery == 0 && $parent != 0) {
			$cart->add(460);
		}
		else if ($delivery == 1 && $parent == 0) {
			$cart->remove($keys);
		}
	
	break;

}
Андрей
11 июня 2019, 20:51
modx.pro
1 213
0

PdoPage дает странные урл

Хочу сделать пагинацию и решил сделать на pdopage.

Написал по документации

<div class="rows">
        [[!pdoPage?
            &parents=`[[*id]]`
            &limit=`36`
            &tpl=`item`
            &includeTVs=`img, price, title1, discount`
            &ajaxMode=`default`
            &pageLinkScheme=`/[[+pageVarKey]]-[[+page]]`
        ]]
    </div>
    [[!+page.nav]]
и когда нажимаю а страницу — переходит на site.com/catalog/catalog/?page=2 // Появляется лишний /catalog/
и нормальная пагинация не генерируется. Как сделать что бы урл был как site.com/catalog/?page=2?

(P.S. Весь сайт на чпу)
Марк
11 июня 2019, 19:10
modx.pro
832
0

Каким образом можно выбрать публикации только за последние три недели?

Сделал, как было предложено — создал сниппет getDateWeekAgo

<?php
$formatDate = date('Y-m-d H:i:s');
$date = new DateTime($formatDate);
$date->modify("-21 day");
return $date->format('Y-m-d H:i:s');

в котором формируется соответствующая дата и разместил код.

[[!pdoPage?
&element=`getTickets`
&tpl=`TicketArticleOnlyRow`
&includeContent=`1`
&parents=`[[*parent]]`
&limit=`3`
&resources=`-[[*id]]`
&sortby=`RAND()`
&includeTVs=`tvimageticket`
&where=`{«publishedon:>»:"[[getDateWeekAgo]]"}`
]]

Подозреваю, что-то делаю не так.
Игорь
11 июня 2019, 15:31
modx.pro
905
0

Как массово удалить лишние товары miniShop2?

Доброе время суток.

Как массово удалить лишние товары miniShop2?
SQL-запросом, нужно все поля перечислять, джойнить таблицы.
Как быстрее и проще?
Спасибо
Iskatel
10 июня 2019, 19:43
modx.pro
1 513
0