Уникальность псевдонимов при импорте catalogFill



  • Чтобы проверить создаваемый псевдоним на уникальность, и в случае существования в системе такого же добавлять к нему ***-1, ***-2 и т. д., можно в файле core/components/catalogfill/model/catalogfill.class.php добавить в конец функции makeAlias (1468 строка) перед return $str; такой кусочек кода:

    if($this->modx->getCount('modResource', array('alias'=>$str))!= 0) {
        $count = 1;
        $newAlias = $str;
        while($this->modx->getCount('modResource', array('alias'=>$newAlias))!= 0) {
            $newAlias = $str;
            $newAlias .= '-' . $count;
            $count++;
        }
        $str= $newAlias;
    } 
    

    Честно украдено отсюда ).


  • Администраторы

    Надо ещё проверять родителя. Т.к. если внутри разных родителей будут одинаковые алиасы это ничего страшного.
    И лучше это делать через функцию "filter_import"



  • А как это сделать через функцию "filter_import" ?



Похоже, подключение к Форум | MODX Shopkeeper было разорвано, подождите, пока мы пытаемся восстановить соединение.