Как не подключать ни одного партнерского модуля Битрикс

Углубленное изучение Битрикс
  • Как не подключать ни одного партнерского модуля Битрикс

    Антон Долганин 22 Мая 2014 6:45 965
    При отладке или поиска бага иногда требуется отключить все сторонние модули Битрикс. А если их уже достаточное количество — это становится практически невыполнимой задачей. Тут опишу решение-хак.

    Нам придется немного подправить ядро. Это не страшно, ведь это период отладки. Для начала лучше закрыть сайт от внешнего доступа в настройках главного модуля (если вы точно не уверены в последствиях отключения модулей).

    Идем в файл /bitrix/modules/main/classes/general/module.php. Там находим функцию IncludeModule (можно поискать по строке "function IncludeModule" ). И в самом начале тела функции сразу после { пишем:

    if (strpos($moduleName, '.')!==false) {
        return;
    }


    Получается такое:

    public static function IncludeModule($module_name)
    {
        if (strpos($moduleName, '.')!==false) {
            return;
        }
        /*тут идет остальной код функции, который может быть разный в зависимости от версии системы*/
    }


    Теперь у вас система функционирует полностью без партнерских модулей. После работы не забудьте удалить внесенные изменения.