Перейти к содержанию
Официальный форум поддержки Simpla

Поднять скопом цены на нужный процент


Рекомендуемые сообщения

Парни, кто подскажет, какие варианты есть в Симпле, чтобы можно было поднимать цены на все товары скопом, например на выбранную категорию на 10%
Нужен модуль, добработка?
Я так понял по умолчанию в системе такого  функционала не предусмотрено?

Ссылка на сообщение
Поделиться на другие сайты
Открываем simpla/design/html/products.tpl и ищем

<option value="delete">Удалить</option>
после добавляем

<option value="change_price">Изменить цену</option>
далее ищем

<input id="apply_action" class="button_green" type="submit" value="Применить">
перед кодом добавляем

<span id="change_price" style="display: none;">
<select name="op_type"><option value="0">прибавить/отнять</option><option value="1">коэффициент</option></select> <input type="text" name="value" size="3" /> <label><input type="checkbox" name="save_old" value="1" title="сохранить старую цену" checked="checked" />сохранить старую цену</label>
</span>
ищем, перед

// Если есть варианты, отображать ссылку на их разворачивание
добавим

// Изменение цены
        $("#action select[name=action]").change(function() {
                if($(this).val() == 'change_price')
                        $("span#change_price").show();
                else
                        $("span#change_price").hide();
        });
далее ищем и перед

if($('select[name="action"]').val()=='delete' && !confirm('Подтвердите удаление'))
добавим

if($('select[name="action"]').val()=='change_price' && !confirm('Подтвердите изменение цены'))
return false;
Открываем файл simpla/ProductsAdmin.php и перед

case 'move_to_brand':
добавим

case 'change_price':
                {
                    $operation = $this->request->post('op_type', 'integer');
                    $save_old = $this->request->post('save_old', 'integer');
                    $value = floatval(str_replace(',','.',$this->request->post('value')));
 
                    foreach($this->variants->get_variants(array('product_id' => $ids)) as $variant)
                    {
                        $price = $variant->price;
                        $old_price = ($save_old == 1) ? $variant->price : $variant->compare_price;
                        if($operation == 0) $price = $price + $value;
                        elseif($operation == 1 && $value != 0) $price = $price * $value;
                        $this->variants->update_variant($variant->id, array('price'=>$price, 'compare_price'=>$old_price, 'stock'=>$stock));
                    }
                    break;
                }
Если необходимо отнять, то пишем, например, -100.
Вот и все.

Может это поможет. Раньше вот тут была эта статья http://variable.pp.ua/пакетное-изменение-цен/ но сейчас к сожалению этот сайт недоступен.

 

Изменено пользователем Alex000
Ссылка на сообщение
Поделиться на другие сайты
15 часов назад, Alex000 сказал:

Открываем simpla/design/html/products.tpl и ищем

<option value="delete">Удалить</option>
после добавляем

<option value="change_price">Изменить цену</option>
далее ищем

<input id="apply_action" class="button_green" type="submit" value="Применить">
перед кодом добавляем

<span id="change_price" style="display: none;">
<select name="op_type"><option value="0">прибавить/отнять</option><option value="1">коэффициент</option></select> <input type="text" name="value" size="3" /> <label><input type="checkbox" name="save_old" value="1" title="сохранить старую цену" checked="checked" />сохранить старую цену</label>
</span>
ищем, перед

// Если есть варианты, отображать ссылку на их разворачивание
добавим

// Изменение цены
        $("#action select[name=action]").change(function() {
                if($(this).val() == 'change_price')
                        $("span#change_price").show();
                else
                        $("span#change_price").hide();
        });
далее ищем и перед

if($('select[name="action"]').val()=='delete' && !confirm('Подтвердите удаление'))
добавим

if($('select[name="action"]').val()=='change_price' && !confirm('Подтвердите изменение цены'))
return false;
Открываем файл simpla/ProductsAdmin.php и перед

case 'move_to_brand':
добавим

case 'change_price':
                {
                    $operation = $this->request->post('op_type', 'integer');
                    $save_old = $this->request->post('save_old', 'integer');
                    $value = floatval(str_replace(',','.',$this->request->post('value')));
 
                    foreach($this->variants->get_variants(array('product_id' => $ids)) as $variant)
                    {
                        $price = $variant->price;
                        $old_price = ($save_old == 1) ? $variant->price : $variant->compare_price;
                        if($operation == 0) $price = $price + $value;
                        elseif($operation == 1 && $value != 0) $price = $price * $value;
                        $this->variants->update_variant($variant->id, array('price'=>$price, 'compare_price'=>$old_price, 'stock'=>$stock));
                    }
                    break;
                }
Если необходимо отнять, то пишем, например, -100.
Вот и все.

Может это поможет. Раньше вот тут была эта статья http://variable.pp.ua/пакетное-изменение-цен/ но сейчас к сожалению этот сайт недоступен.

 

Я правильно понимаю, что можно из админки менять цены к нужной категории именно на нужное количество процентов?

Ссылка на сообщение
Поделиться на другие сайты
43 минуты назад, madison21 сказал:

Я правильно понимаю, что можно из админки менять цены к нужной категории именно на нужное количество процентов?

Да этот способ что указан выше требует изменение в бекэнде и управление тоже из бекэнда, так же можно и Sql запросом сделать

Ссылка на сообщение
Поделиться на другие сайты

а можно сделать и вот так

- добавление скидки на какой то товар отдельно

-добавление на бренды

-добавление скидки на категорию

- указывать период когда будет действовать скидка и до какого времени

2022-11-20-2-00-32.png

Изменено пользователем shooroop
Ссылка на сообщение
Поделиться на другие сайты
59 минут назад, shooroop сказал:

авление

 

59 минут назад, shooroop сказал:

а можно сделать и вот так

- добавление скидки на какой то товар отдельно

-добавление на бренды

-добавление скидки на категорию

- указывать период когда будет действовать скидка и до какого времени

2022-11-20-2-00-32.png

Так задача стоит увеличить цены на определённый процент в нужной категории или бренде.
А тут я понимаю скидка, то есть цену можно понизить, а не поднять.
Или я не так понял..

Ссылка на сообщение
Поделиться на другие сайты
7 часов назад, madison21 сказал:

Я правильно понимаю, что можно из админки менять цены к нужной категории именно на нужное количество процентов?

Да, правильно. Причём можно как прибавлять так и уменьшать.

Ссылка на сообщение
Поделиться на другие сайты
16 часов назад, madison21 сказал:

 

Так задача стоит увеличить цены на определённый процент в нужной категории или бренде.
А тут я понимаю скидка, то есть цену можно понизить, а не поднять.
Или я не так понял..

В обоих решениях можно прибавлять и уменьшать цены. только во втором решении запоминается старая цена и возващается обратно по истечению даты если указана

Изменено пользователем shooroop
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...