Как через консоль убрать чекбокс у всех товаров?

Чтобы удалить чекбокс у всех товаров в MODX через консоль, вам потребуется выполнить следующие шаги:

1. Откройте файл modx.php в папке core/model/modx/processors/element/.

2. Найдите следующую функцию:

public function prepare(array $data = array()) {
    $data = parent::prepare($data);
    
    return $data;
}

3. Внутри функции найдите следующий код:

if ($data['template']) {
    $this->setProperty('template', $data['template']);
} else if ($this->getProperty('id')) {
    $object = $this->_modx->getObject($objectClass, $this->getProperty('id'));
    if ($object) {
        $data['template'] = $object->template;
    }
}

4. Замените его на следующий код:

if ($data['template']) {
    $this->setProperty('template', $data['template']);
} else if ($this->getProperty('id')) {
    $object = $this->_modx->getObject($objectClass, $this->getProperty('id'));
    if ($object) {
        $data['template'] = $object->template;
        $object->removeOne(
            $object->xpdo->newQuery('modTemplateVarResource'),
            $data['checkbox']
        );
    }
}

5. Сохраните файл и закройте его.

Теперь, если вы выполните обновление тегов для товаров, чекбокс будет удален у всех товаров.

Убедитесь, что вносите изменения в нужный файл и делайте резервные копии перед любыми изменениями в PHP-файлах. Данные изменения будут применяться ко всей установке MODX, поэтому убедитесь, что вы понимаете, как это может повлиять на вашу систему.