Наумов Алексей

Наумов Алексей

С нами с 31 марта 2013; Место в рейтинге пользователей: #13
Наумов Алексей
11 сентября 2014, 11:25
0
А если меню многоуровневое, то на втором уровне какая будет сортировка?
Наумов Алексей
11 сентября 2014, 11:24
+2
Я сотни раз уже нажимал на ссылку, ведущую на туже страницу, где я нахожусь. Просто для перезагрузки страницы. Потому как я мог на странице понажимать всякие вкладки, или отправить какие то формы через POST/AJAX и мне нужно отправить эту форму заново, увидеть страницу в первозданном виде.

И если ссылку на текущую страницу УБРАТЬ из меню — для меня это НЕУДОБНО! Так что единственный приемлемый вариант из перечисленного — nofollow.
Наумов Алексей
04 сентября 2014, 14:18
0
MIGx, настроенный для редактирования таблицы «Имя» => «Значение» не устроит?
Наумов Алексей
15 августа 2014, 09:06
0
Через настройку форм.
Наумов Алексей
12 августа 2014, 08:45
0
1 или 3, в зависимости от ситуации. 2 — никогда.
Наумов Алексей
02 августа 2014, 14:19
+1
Нужно для каждого пользователя создать свою настройку с языком админки. Она переопределит системную настройку.

Безопасность — Управление пользователями — Редактировать — Настройки, там создаем manager_language
Наумов Алексей
29 июля 2014, 13:41
0
Снимай просто эти ресурсы с публикации и все.
Наумов Алексей
29 июля 2014, 13:40
0
Заморочить URI ))) настройка-огонь!)
Наумов Алексей
29 июля 2014, 10:28
0
Очень часто нужно несколько галерей на странице:

Текст текст текст
Фотоальбом, 5 фото
Текст текст текст
Фотоальбом, 3 фото
Текст текст текст
Фотоальбом 8 фото

Как это лучше всего реализовать через ms2gallery? Альбомы должен добавлять само собой менеджер сайта, а не программист.
Наумов Алексей
25 июля 2014, 13:39
0
А, немного упустил этот момент, писал по памяти.

Пункт 3 из моего комментария переделываем:
<div class="ms2_discount [[+hide_discount]]">Скидка: <span class="ms2_discount_price">[[+discount]]</span></div>
<div class="ms2_margin [[+hide_margin]]">Наценка: <span class="ms2_margin_price">[[+margin]]</span></div>

а в конце чанка еще и так:
<!--minishop2_hide_margin style="display:none;"-->
<!--minishop2_hide_discount style="display:none;"-->
Сниппет msCart копируем в msCartEx и вызываем на странице его.
в нем (в конце, после цикла foreach ($cart as $k => $v) ) добавляем примерно это:
$outer['hide_margin'] = !$outer['margin'] = $miniShop2->cart->getCartMargin();
$outer['hide_discount'] = !$outer['discount'] = $miniShop2->cart->getCartDiscount();
$outer['total_cost'] = $miniShop2->cart->calcTotalCostEx($outer['total_cost'], $outer['margin'], $outer['discount']);
Вообще вещь индивидуальная для каждого сайта, поэтому подгоняйте для себя.

т.е. тут у нас 2 действия:
1. проставляем margin и discount
2. скрываем или показываем строчку со скидкой.
Наумов Алексей
25 июля 2014, 09:37
1
+2
Да, сделал!

1. Переопределяем msCartHahdler. В частности функцию status:
public function status($data = array()) {
        $status = parent::status($data);

        // margin && discount
        $status['margin'] = $this->getCartMargin();
        $status['discount'] = $this->getCartDiscount();
        $status['total_cost'] = $this->calcTotalCostEx($status['total_cost'], $status['margin'], $status['discount']);

        return $status;
    }

public function calcTotalCostEx($total_cost, $margin, $discount){
        $result = $total_cost;
        if(!empty($margin)){
            $result = $total_cost + $margin;
        }
        if(!empty($discount)){
            $result = $total_cost - $discount;
        }
        return $result;
    }
getCartMargin, getCartDiscount — считайте скидку и наценку как хотите в них, для этого у вас есть $this->cart — корзина с товарами.

2. Копируем файл minishop2.js, указываем в настройках новый путь к нему, добавляем логику:

2.1 Метод miniShop2.Cart… setup
miniShop2.Cart.margin = '.ms2_margin';
miniShop2.Cart.discount = '.ms2_discount';
2.2. Метод status:
if(status['margin'] > 0){
                    $(miniShop2.Cart.margin).show();
                    $(miniShop2.Cart.margin + ' .ms2_margin_price').text(status['margin']);
                }
                else{
                    $(miniShop2.Cart.margin).hide();
                }
                if(status['discount'] > 0){
                    $(miniShop2.Cart.discount).show();
                    $(miniShop2.Cart.discount + ' .ms2_discount_price').text(status['discount']);
                }
                else{
                    $(miniShop2.Cart.discount).hide();
                }
3. Ну и добавляем в чанк cart.Outer строчки с наценкой и скидкой:
<div class="ms2_discount">Скидка: <span class="ms2_discount_price"></span></div>

<div class="ms2_margin">Наценка: <span class="ms2_margin_price"></span></div>
Наумов Алексей
22 июля 2014, 11:17
0
Чего только стоит механизм добавления своих полей в минишоп bezumkin.ru/modx/minishop2/classes/910/. Это гораздо удобнее и быстрее TV-шек.
Наумов Алексей
22 июля 2014, 10:54
+1
Если есть что-то типа каталога товаров/услуг с фиксированными полями типа цена/наличие, я бы однозначно сделал это через минишоп. Удобнее, возможностей больше.
Наумов Алексей
11 июля 2014, 20:57
+1
Посмотри небольшое дополнение Personalize, выводит один чанк для авторизованных, а другой для неавторизованных пользователей.
Наумов Алексей
11 июля 2014, 10:04
0
1. Увеличиваем время работы скрипта. Если есть свой VPS — вроде нормальный вариант) Я всегда так делал.
2. Делаем импорт партиями, например вызывая скрипт импорта через аякс, и импортируя то кол-во товара, которое заведомо отработает. Реализация, конечно же, посложнее.
Наумов Алексей
10 июля 2014, 10:32
0
DebugParcer попробуйте запустить, правда он немного платный)
Наумов Алексей
08 июля 2014, 10:10
0
Что некорректно работает?

Был неприятный момент с указанием w, h и опцией zc=0, картинка начинала тянуться. Решается путем добавления far=0.
Наумов Алексей
01 июля 2014, 15:02
0
При обновлении существующих сайтов проблем из-за отсутствия в текущих заказах этого поля не будет?
Наумов Алексей
23 июня 2014, 14:24
1
+3
Я обычно хук spam применяю все же, делаю поле, которое как настоящее, но скрываю его каким либо образом. Hidden поле не катит почти не когда. Часто бывает что спама нет совсем, а потом — как прорывает. То ли кто-то в ручную проверяет, какое поле не заполнять, и спамер-программе указывает это. В этом случае поле переименовываю)