Алексей Ерохин

Алексей Ерохин

Был в сети 15 апреля 2025, 15:28
Заказы не принимаю
Это совершенно нормальная картина и со стороны modx и со стороны Яндекса.
Скорее всего Ваш сайт был проиндексирован до включения ЧПУ.
И, кстати, эти ссылки должны также открываться как и остальные согласно этому правилу RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] (вы запрашиваете, например, host.com/cart.html, а апач вам отдает контент с host.com/index.php?q=cart.html — так устроен modx)
Волноваться Вам надо будет, когда нормальные страницы с ЧПУ не будут попадать в индекс.
Что-то у Вас намешано все в кучу.
var storeitems = new Ext.data.ArrayStore({
    id: 'advert-items'
    ,fields: ['value',{name: 'name', type: 'string']}
    ,data: [[1,'Да'],[0,'Нет']]
});
advert.combo.Items = function(config) {
    config = config || {};
    Ext.applyIf(config,{
        store: storeitems
        ,displayField: 'name'
        ,valueField: 'value'
        ,hiddenName: 'поле в базе=из mysql map' //не забудьте поменять
        ,mode: 'local'
        ,triggerAction: 'all'
        ,editable: false
        ,selectOnFocus: false
        ,preventRender: true
        ,forceSelection: true
        ,enableKeyEvents: true
    });
    advert.combo.Items.superclass.constructor.call(this,config);
};
Ext.extend(advert.combo.Items,MODx.combo.ComboBox);
Ext.reg('advert-combo-items',miniShop2.combo.ProductSex);
bezumkin.ru/modx/minishop2/classes/804/

Создаете файл core/components/minishop2/custom/order/msCustomOrderHandler.class.php
В нем делаете таким образом:
class msCustomOrderHandler extends msOrderHandler {
    public function initialize ($ctx = 'web') {
        $this->modx->regClientScript("<script src=\"путь к скрипту\" type=\"text/javascript\"></script>", true);
        return true;
    }
}
В системных настройках minishop2 прописываете обработчик заказа свой msCustomOrderHandler
Примерно так:
miniShop2.Callbacks.Order.add.response.success = function(response) {
    for (var key in response.data) {
        if (response.data.hasOwnProperty(key)) {
            switch (key) {
                case 'city':
                    if (response.data[key] == 'Копейск') {
                        console.log('Мы в Копейске');
                    } else {
                        console.log('Мы не в Копейске');
                    }
                    break;
                //default:
            }
        }
    }
}
Это в отдельный скрипт и цепляете в своем orderHandler в initialize