start.exe
С нами с 13 сентября 2014; Место в рейтинге пользователей: #367Minishop2 количество товаров в корзине
Доброго времени дня!
Необходимо вывести в мини корзине количество товаров (кол-во строк в корзине).
Как вывести на странице разобрался:
Плейсхолдер {$total_count} видел, не подходит. Он выводит общее количество товара. В моем случае товар продается метрами.
Например: кладем в корзину 5 метров одного товара и 3 метра другого. Плейсхолдер
{$total_count} выведет 8, а надо 2 (т.к. в корзине 2 товара)
Решение:
1) Расширил класс корзины:
2) Что бы при добавлении в корзину у нас мини корзина сразу обновлялась дописал колбеки:
Необходимо вывести в мини корзине количество товаров (кол-во строк в корзине).
Как вывести на странице разобрался:
count(($miniShop2->cart->get()));
А как сделать что бы при добавлении нового товара автоматически обновлялось не знаю.Плейсхолдер {$total_count} видел, не подходит. Он выводит общее количество товара. В моем случае товар продается метрами.
Например: кладем в корзину 5 метров одного товара и 3 метра другого. Плейсхолдер
{$total_count} выведет 8, а надо 2 (т.к. в корзине 2 товара)
Решение:
1) Расширил класс корзины:
<?php
if(!class_exists('msCartHandler')) {
require_once dirname(dirname(dirname(__FILE__))) . '/model/minishop2/mscarthandler.class.php';
}
class myCartHandler extends msCartHandler implements msCartInterface{
public function status($data = array())
{
$status = array(
'total_count' => 0,
'total_cost' => 0,
'total_weight' => 0,
'total_num' => 0,
);
foreach ($this->cart as $item) {
if (empty($item['ctx']) || $item['ctx'] == $this->ctx) {
$status['total_count'] += $item['count'];
$status['total_cost'] += $item['price'] * $item['count'];
$status['total_weight'] += $item['weight'] * $item['count'];
$status['total_num']++;
}
}
return array_merge($data, $status);
}
}
— теперь у нас появился новый плейсхолдер — total_num2) Что бы при добавлении в корзину у нас мини корзина сразу обновлялась дописал колбеки:
/* Добавление твоаров в корзине */
miniShop2.Callbacks.Cart.add.response.success = function(response) {
//console.log(response.data['total_num']);
miniShop2.Cart.totalNum = '.ms2_total_num';
$(miniShop2.Cart.totalNum).text(response.data['total_num']);
};
/* Изменение твоаров в корзине */
miniShop2.Callbacks.Cart.change.response.success = function(response) {
miniShop2.Cart.totalNum = '.ms2_total_num';
$(miniShop2.Cart.totalNum).text(response.data['total_num']);
};
3) Добавляем в чанк с мини корзиной плейсхолдер и класс.<span class="ms2_total_num">{$total_num}</span>
П.с. за наводку спасибо пользователю — Алексей mFilter2 и редирект на другую страницу
Вечер добрый сообщество.
Есть главная страницу сайта, на которое вызван сниппет mFilter2 с параметрами
…
Есть главная страницу сайта, на которое вызван сниппет mFilter2 с параметрами
…
Как реализовать? Интернет-магазин керамики
Подскажите или намекните как правильно реализовать следующее:
11000 товаров
У каждого производителя есть свои коллекции.
в коллекции существуют множество товаров (напольная плитка, плинтуса, настенная плитка и т.д.)
как в карточке товара (какая-либо коллекция) вставить все товары которые есть в этой коллекции
Пример:
Рассмотрим коллекцию А. в ней существует 3 вида товаров (Напольная, Настенная, и плинтуса)
если
в коллекции есть:
Плинтуса -> то выводить надпись Плинтус и все товары данной колекции
иначе если есть
Напольная плитка -> то выводить Напольная плитка и товары и т.д.
Извиняюсь за такое подробное описание, но я выложил суть вопроса как можно подробнее
11000 товаров
У каждого производителя есть свои коллекции.
в коллекции существуют множество товаров (напольная плитка, плинтуса, настенная плитка и т.д.)
как в карточке товара (какая-либо коллекция) вставить все товары которые есть в этой коллекции
Пример:
Рассмотрим коллекцию А. в ней существует 3 вида товаров (Напольная, Настенная, и плинтуса)
если
в коллекции есть:
Плинтуса -> то выводить надпись Плинтус и все товары данной колекции
иначе если есть
Напольная плитка -> то выводить Напольная плитка и товары и т.д.
Извиняюсь за такое подробное описание, но я выложил суть вопроса как можно подробнее
Tickets - обработка и получение полей Формы
Вначале коротко вопросы:
- Как осуществить кастомную обработку полей формы до отправки в БД? (частично решено)
- Как при выводе комментарий, обращаться к данным из «properties»? (уже узнал)
- Как контролировать то, что отправляется в «properties»?
Анонс SeoFilter - ЧПУ+SEO для mFilter2 и не только
[SeoFilter] — удобное управление ЧПУ ссылками, мета-тегами и генерация текстов.
[Купить компонент в modstore] [Демо-версия]
Добрый день! Представляю компонент, идея которого зародилась довольно таки давно, и уже было подобное решение, с которого я и начинал. Большое спасибо Дмитрию Зарубину — автору того поста, а также Василию, за прекрасные уроки по написанию компонентов.
Основные возможности:
— работа из коробки с mFilter2;
— поддержка любых полей в фильтре: поля ресурса, поля товара, опций miniShop2, TV и любых своих;
— работа без двойной транслитерации (подробнее дальше);
— любой формат ссылок для поля (/color-white, /white-color, /white, /belyi и т.д);
— статистика переходов на страницы как по ссылкам, так и через фильтр;
— интеграция с компонентом frontendManager (добавлен контроллер для редактирования с фронта);
— возможность выбирать и прописывать в шаблоны мин/макс значения по числовым полям;
— prepareSnippet для дополнительной обработки шаблонов, для большей гибкости выборок;
— SEO шаблоны с Fenom и склонения через сервис morpher (Заголовок на скриншоте:)
Подробнее под катом.
[Купить компонент в modstore] [Демо-версия]
Добрый день! Представляю компонент, идея которого зародилась довольно таки давно, и уже было подобное решение, с которого я и начинал. Большое спасибо Дмитрию Зарубину — автору того поста, а также Василию, за прекрасные уроки по написанию компонентов.
Основные возможности:
— работа из коробки с mFilter2;
— поддержка любых полей в фильтре: поля ресурса, поля товара, опций miniShop2, TV и любых своих;
— работа без двойной транслитерации (подробнее дальше);
— любой формат ссылок для поля (/color-white, /white-color, /white, /belyi и т.д);
— статистика переходов на страницы как по ссылкам, так и через фильтр;
— интеграция с компонентом frontendManager (добавлен контроллер для редактирования с фронта);
— возможность выбирать и прописывать в шаблоны мин/макс значения по числовым полям;
— prepareSnippet для дополнительной обработки шаблонов, для большей гибкости выборок;
— SEO шаблоны с Fenom и склонения через сервис morpher (Заголовок на скриншоте:)
{$category_i} {$color_r} цвета у метро {$metro}
Подробнее под катом.
Доп. поля товаров MiniShop2
Здравствуйте! Подскажите пожалуйста кто имел дело с созданием плагинов товаров в карточке Minishop2, т.е. с добавлением новых полей. Я добавил нужное мне поле «Плотность». В админке все как мне нужно, а как сделать, чтобы на фронтенде значение поля выводилось как обычный текст (как Артикул например), а не как выпадающий список?
Вывести поля производителя на отдельную страницу?
Подскажите пожалуйста. Хочу сделать персональную страницу для каждого производителя, в настройках miniShop2 добавил производителя связал его с определенным ресурсом, но не понимаю как вывести поля производителя (название, логотип, описание и т.д и т.п.) в этом ресурсе. Какие плэйсхолдеры для этого использовать? Прописываю [[+name]], [[+logo]], но ни чего не выводит, помогите кто может.
Сортировка msProducts по опции Дата
Приветствую!
Мероприятия — это товары minishop.
Данные в мероприятиях записаны в опциях.
Есть опция Дата проведения — date_opt.
Нужно сортировать по дате date_opt, чтобы было так:
01.06.2017
02.06.2017
03.06.2017
01.07.2017
02.07.2017
03.07.2017
Мероприятия — это товары minishop.
Данные в мероприятиях записаны в опциях.
Есть опция Дата проведения — date_opt.
Нужно сортировать по дате date_opt, чтобы было так:
01.06.2017
02.06.2017
03.06.2017
01.07.2017
02.07.2017
03.07.2017
mFilter2 + Fenom + filterOptions
Здравствуйте!
Был вот такой код:
Хочу его переписать на Fenom. И сталкиваюсь с такой проблемой, что не хватает ковычек для параметра «more_tpl», Т.к. в синтаксисе modx используются ковычки «` `», а в Fenom «' '»
Соответственно, с Fenom не получается в шаблоне more_tpl добавить класс для ссылки:
Был вот такой код:
[[!mFilter2?
&parents=`0`
&ajaxMode=`button`
&filterOptions=`{
"more_tpl": "<a class='btn_more'>" + mse2Config['oneMoreText'] + "</a>"
}`
]]
Хочу его переписать на Fenom. И сталкиваюсь с такой проблемой, что не хватает ковычек для параметра «more_tpl», Т.к. в синтаксисе modx используются ковычки «` `», а в Fenom «' '»
Соответственно, с Fenom не получается в шаблоне more_tpl добавить класс для ссылки:
{'!mFilter2' | snippet : [
'parents' => 0,
...
"filterOptions" => '{
"more_tpl": "<a class= ... >...</a>",
}'
]}
Подскажите, как решить эту проблему? Minishop2 вывод свойств как категорий в разделе
Здравствуйте!
Есть такой вопрос. У меня есть товары, которые соотносятся с автомобилями: марка, модель, кузов.
Марку автомобиля я сделал категориями, т/к их немного (самих товаров около 6к).
У каждого товара в свойствах я прописал модель и кузов (повторюсь, что марка это категория).
Теперь я хочу чтобы в категории (т/е в марке автомобиля) не происходил сразу вывод товаров, а сначала вышли все модели, под моделями кузова.
Т/е мне нужно что-то вроде фильтра по свойствам, но внутри категории. Пока хочу просто их выводить хотя бы.
Готового ничего не нашел, поэтому стал писать сниппет:
Есть такой вопрос. У меня есть товары, которые соотносятся с автомобилями: марка, модель, кузов.
Марку автомобиля я сделал категориями, т/к их немного (самих товаров около 6к).
У каждого товара в свойствах я прописал модель и кузов (повторюсь, что марка это категория).
Теперь я хочу чтобы в категории (т/е в марке автомобиля) не происходил сразу вывод товаров, а сначала вышли все модели, под моделями кузова.
Т/е мне нужно что-то вроде фильтра по свойствам, но внутри категории. Пока хочу просто их выводить хотя бы.
Готового ничего не нашел, поэтому стал писать сниппет:
$table = 'modx_ms2_products';
$sql = "SELECT * FROM $table GROUP BY model";
$q = $modx->prepare($sql);
$q->execute(array(0));
$arr = $q->fetchAll(PDO::FETCH_ASSOC);
Но в этой таблице нет понятия кто кого наследует по разделам. И тут еще нужно использовать modx_site_content таблицу, т/к там взаимосвязи по разделам лежат (т/к марка это раздел/категория).