Кастомные стандартные единицы измерения для характеристик товаров Webasyst (Shop-Script)

Когда вы в разделе «Настройки → Типы и характеристики товаров» добавляете характеристику типа «Значение», для нее можно выбрать единицу измерения: метры, килограммы, литры.

Стандартный список измеряемых свойств и единиц измерения можно изменить и дополнить.

  1. Скопируйте файл wa-apps/shop/lib/config/data/dimension.php и сохраните копию в файл wa-config/apps/shop/dimension.php.
  2. Измените содержимое копии так, как вам нужно, по аналогии с имеющимися записями. Для этого нужно хотя бы немного уметь программировать на PHP.
  3. Очистите кеш в настройках «Инсталлера», чтобы магазин начал использовать измененную вами копию файла.

<?php
return array(
    'length' => array(
        'name'      => _w('Length'),
        'base_unit' => 'm',
        'units'     => array(
            'm'  => array(
                'name'       => _w('m'), //meter
                'multiplier' => 1,
            ),
            'cm' => array(
                'name'       => _w('cm'), //centimeter
                'multiplier' => 0.01,
            ),
            'mm' => array(
                'name'       => _w('mm'), //millimeter
                'multiplier' => 0.001,
            ),
            'in' => array(
                'name'       => _w('in'), //inch
                'multiplier' => 0.0254,
            ),
            'ft' => array(
                'name'       => _w('ft'), //foot
                'multiplier' => 0.3048,
            ),
            'yd' => array(
                'name'       => _w('yd'), //yard
                'multiplier' => 0.9144,
            ),
            'km' => array(
                'name'       => _w('km'), //kilometer
                'multiplier' => 1000,
            ),
            'mi' => array(
                'name'       => _w('mi'), //mile
                'multiplier' => 1609,
            ),
        )
    ),
    'weight' => array(
        'name'      => _w('Weight'),
        'base_unit' => 'kg',
        'units'     => array(
            'kg'  => array(
                'name'       => _w('kg'), //kilogram
                'multiplier' => 1,
            ),
            'g'   => array(
                'name'       => _w('g'), //gram
                'multiplier' => 0.001,
            ),
            'т'  => array(
                'name'       => _w('тонн'), //тонн
                'multiplier' => 1000,
            ),
            'lbs' => array(
                'name'       => _w('lbs'), //pound
                'multiplier' => 0.4536,
            ),
            'oz'  => array(
                'name'       => _w('oz'), //ounce
                'multiplier' => 0.0283495,
            ),
        ),
    ),
    'volume' => array(
        'name'      => _w('Volume'),
        'base_unit' => 'l',
        'units'     => array(
            'l'  => array(
                'name'       => _w('l'), //liter
                'multiplier' => 1,
            ),
            'ml' => array(
                'name'       => _w('ml'), //milliliter
                'multiplier' => 0.001,
            ),
            'cm3' => array(
                'name' => _w('cm3'), //cubic centimeter
                'multiplier' => 0.001,
            ),
            'm3' => array(
                'name' => _w('m3'), //cubic meter
                'multiplier' => 1000,
            ),
            'cl' => array(
                'name'       => _w('cl'), //centiliter
                'multiplier' => 0.4536,
            ),
            'mm3' => array(
                'name' => _w('mm3'), //cubic millimeter
                'multiplier' => 0.000001,
            ),
        ),
    ),
    'frequency' => array(
        'name'      => _w('Frequency'),
        'base_unit' => 'Hz',
        'units'     => array(
            'Hz'  => array(
                'name'       => _w('Hz'),
                'multiplier' => 1,
            ),
            'KHz'  => array(
                'name'       => _w('KHz'),
                'multiplier' => 1000,
            ),
            'MHz'  => array(
                'name'       => _w('MHz'),
                'multiplier' => 1000000,
            ),
            'GHz'  => array(
                'name'       => _w('GHz'),
                'multiplier' => 1000000000,
            ),
        ),
    ),
    'power' => array(
        'name'      => _w('Power'),
        'base_unit' => 'W',
        'units'     => array(
            'W'  => array(
                'name'       => _w('W'),
                'multiplier' => 1,
            ),
            'KW'  => array(
                'name'       => _w('KW'),
                'multiplier' => 1000,
            ),
            'MW'  => array(
                'name'       => _w('MW'),
                'multiplier' => 1000000,
            ),
            'mW'  => array(
                'name'       => _w('mW'),
                'multiplier' => 0.001,
            ),
        ),
    ),
    'memory' => array(
        'name'      => _w('Memory'),
        'base_unit' => 'MB',
        'units'     => array(
            'B'  => array(
                'name'       => _w('B'),
                'multiplier' => 0.000001,
            ),
            'KB'  => array(
                'name'       => _w('KB'),
                'multiplier' => 0.001,
            ),
            'MB'  => array(
                'name'       => _w('MB'),
                'multiplier' => 1,
            ),
            'GB'  => array(
                'name'       => _w('GB'),
                'multiplier' => 1000,
            ),
            'TB'  => array(
                'name'       => _w('TB'),
                'multiplier' => 1000000,
            ),
        ),
    ),
    'area' => array(
        'name' => _w('Area'),
        'base_unit' => 'sqm',
        'units' => array(
            'sqm' => array(
                'name'       => _w('sq m'),
                'multiplier' => 1,
            ),
            'sqft' => array(
                'name'       => _w('sq ft'),
                'multiplier' => 0.092903
            ),
            'ac' => array(
                'name'       => _w('ac'),
                'multiplier' => 4046.86
            ),
            'ha' => array(
                'name'       => _w('ha'),
                'multiplier' => 10000
            ),
            'sqmm' => array(
                'name'       => _w('sq mm'),
                'multiplier' => 0.000001,
            ),
            'sqcm' => array(
                'name'       => _w('sq cm'),
                'multiplier' => 0.0001,
            ),
            'sqyd' => array(
                'name'       => _w('sq yd'),
                'multiplier' => 0.836127,
            ),
            'sqin' => array(
                'name'       => _w('sq in'),
                'multiplier' => 0.00064516,
            ),
            'sqkm' => array(
                'name'       => _w('sq km'),
                'multiplier' => 1000000,
            ),
            'sqmi' => array(
                'name'       => _w('sq mi'),
                'multiplier' => 2589975.2356,
            ),
        ),
    ),
    'time' => array(
        'name' => _w('Time'),
        'base_unit' => 'sec',
        'units' => array(
            'sec' => array(
                'name' => _w('sec'),
                'multiplier' => 1
            ),
            'min' => array(
                'name' => _w('min'),
                'multiplier' => 60
            ),
            'hr' => array(
                'name' => _w('hr'),
                'multiplier' => 3600
            ),
            'day' => array(
                'name' => _w('days'),
                'multiplier' => 86400
            ),
            'week' => array(
                'name' => _w('weeks'),
                'multiplier' => 604800
            ),
            'month' => array(
                'name' => _w('months'),
                'multiplier' => 2592000
            ),
            'year' => array(
                'name' => _w('years'),
                'multiplier' => 31536000
            ),
             'month2' => array(
                'name' => _w('мес.'),
                'multiplier' => 2592000
            ),
            'year2' => array(
                'name' => _w('лет'),
                'multiplier' => 31536000
            ),
        ),
    ),

    //custom dimensions are added in a similar way
    'Voltage' => array(
        'name'      => _w('Напряжение'),
        'base_unit' => 'В',
        'units'     => array(
            'В'  => array(
                'name'       => _w('В'), //Вольт
                'multiplier' => 1,
            ),
            'мВ'   => array(
                'name'       => _w('мВ'), //милиВольт
                'multiplier' => 0.001,
            ),
        ),
    ),
    
    'Siemens' => array(
        'name'      => _w('Сименс'),
        'base_unit' => 'См',
        'units'     => array(
            'См'  => array(
                'name'       => _w('См'), //Сименс
                'multiplier' => 1,
            ),
            'мСм'   => array(
                'name'       => _w('мСм'), //милиСименс
                'multiplier' => 0.001,
            ),
        ),
    ),
    
    'Temperature' => array(
        'name'      => _w('Температура'),
        'base_unit' => '°C',
        'units'     => array(
            '°C'  => array(
                'name'       => _w('°C'), //Градус Цельсия
                'multiplier' => 1,
            ),
            'К'  => array(
                'name'       => _w('К'), //Кельвин
                'multiplier' => -273,
            ),
            '°F'  => array(
                'name'       => _w('°F'), //Градус Фаренгейта
                'multiplier' => 1,
            ),
        ),
    ),
    
    'Speed' => array(
        'name'      => _w('Скорость'),
        'base_unit' => 'м/с',
        'units'     => array(
            'м/с'  => array(
                'name'       => _w('м/с'), //метры на секунду
                'multiplier' => 1,
            ),
            'мм/с'  => array(
                'name'       => _w('мм/с'), //милиметры на секунду
                'multiplier' => 0.001,
            ),
            'м/мин'  => array(
                'name'       => _w('м/мин'), //метры в минуту
                'multiplier' => 0.01666,
            ),
            'мм/мин'  => array(
                'name'       => _w('мм/мин'), //милиметры в минуту
                'multiplier' => 0.000016666,
            ),
            'км/ч'  => array(
                'name'       => _w('км/ч'), //келометры в час
                'multiplier' => 0,2778,
            ),
            'См/с'  => array(
                'name'       => _w('См/с'), //Сименс в секунду
                'multiplier' => 1,
            ),
            '1/мин'  => array(
                'name'       => _w('1/мин'), //единица за минуту
                'multiplier' => 1,
            ),
            'об/мин'  => array(
                'name'       => _w('об/мин'), //оборот за минуту
                'multiplier' => 1,
            ),
            'л/мин'  => array(
                'name'       => _w('л/мин'), //литр за минуту
                'multiplier' => 1,
            ),
            'мм/об'  => array(
                'name'       => _w('мм/об'), //милиметр за оборот
                'multiplier' => 1,
            ),
        ),
    ),
    
    'Quantity' => array(
        'name'      => _w('Количество'),
        'base_unit' => 'шт',
        'units'     => array(
            'шт'  => array(
                'name'       => _w('шт'), //штуки
                'multiplier' => 1,
            ),
        ),
    ),
    
    'Сorner' => array(
        'name'      => _w('Угол'),
        'base_unit' => '°',
        'units'     => array(
            '°'  => array(
                'name'       => _w('°'), //Градус
                'multiplier' => 1,
            ),
             'мин'  => array(
                'name'       => _w('мин'), //Минута
                'multiplier' => 0.019,
            ),
            'сек'  => array(
                'name'       => _w('сек'), //Секунда
                'multiplier' => 0.00031,
            ),
            'радиан'  => array(
                'name'       => _w('радиан'), //Радиан
                'multiplier' => 57.3,
            ),
        ),
    ),
    
    'Charge' => array(
        'name'      => _w('Заряд'),
        'base_unit' => 'Ач',
        'units'     => array(
            'Ач'  => array(
                'name'       => _w('Ач'), //Ампер час
                'multiplier' => 1,
            ),
        ),
    ),
    
    'Efficiency' => array(
        'name'      => _w('Эффективность'),
        'base_unit' => '%',
        'units'     => array(
            '%'  => array(
                'name'       => _w('%'), //проценты
                'multiplier' => 1,
            ),
        ),
    ),
    
    'Powersupply' => array(
        'name'      => _w('Электропитание'),
        'base_unit' => 'ВА',
        'units'     => array(
            'ВА'  => array(
                'name'       => _w('ВА'), //Вольт ампер
                'multiplier' => 1,
            ),
            'кВА'  => array(
                'name'       => _w('кВА'), //кило Вольт ампер
                'multiplier' => 1,
            ),
        ),
    ),
    
    'Performance' => array(
        'name'      => _w('Производительность'),
        'base_unit' => 'м³/час',
        'units'     => array(
            'м³/час'  => array(
                'name'       => _w('м³/час'), //Кубический метр за час
                'multiplier' => 1,
            ),
        ),
    ),
    
    'Noise' => array(
        'name'      => _w('Уровень шума'),
        'base_unit' => 'Б',
        'units'     => array(
            'Б'  => array(
                'name'       => _w('Б'), //Белл
                'multiplier' => 1,
            ),
            'дБ'  => array(
                'name'       => _w('дБ'), //дециБелл
                'multiplier' => 10,
            ),
        ),
    ),
    
    'Pressure' => array(
        'name'      => _w('Давление'),
        'base_unit' => 'Бар',
        'units'     => array(
            'Бар'  => array(
                'name'       => _w('Бар'), //Бар
                'multiplier' => 1,
            ),
            'Па'  => array(
                'name'       => _w('Па'), //Паскаль
                'multiplier' => 1,
            ),
            'МПа'  => array(
                'name'       => _w('МПа'), //МегаПаскаль
                'multiplier' => 1,
            ),
        ),
    ),
    
    'Power' => array(
        'name'      => _w('Сила'),
        'base_unit' => 'Н',
        'units'     => array(
            'Н'  => array(
                'name'       => _w('Н'), //Ньютон
                'multiplier' => 1,
            ),
        ),
    ),
    
    'Moment' => array(
        'name'      => _w('Момент'),
        'base_unit' => 'Нм',
        'units'     => array(
            'Нм'  => array(
                'name'       => _w('Нм'), //Ньютон метр
                'multiplier' => 1,
            ),
        ),
    ),

);

Posted: 10 декабря 2019
Ярослав Указов Проект-менеджер
Was this article helpful? Yes No

0 comments


    Add comment

    To add a comment please sign up or login