$template = 1; // Заменить на id шаблона документов для пересохранения $resources = $modx->getCollection('modResource',array('template' => $template)); foreach ($resources as $res) { $res->save(); }
А каким образом вы вообще умудрились сохранить ресурсы с пробелами в алиасе?
Для начала убедитесь в том что при сохранении ресурса алиас генерируется корректно, происходит замена пробелов на допустимые символы (по умолчению: -).
Используйте дополнение CONSOLE, выполните простейший скрипт:
$template = 1; // Заменить на id шаблона документов для пересохранения $resources = $modx->getCollection('modResource',array('template' => $template)); foreach ($resources as $res) { $res->save(); }
Пробел не в алиасе. Там корректно заменяется на тире.
Ниже пример адреса, ссылка на папку с картинками. Папки во вкладке файлы сохранили с пробелами.
assets/images/Elektromobili/Tundra JJ2255/dsc06125.jpg
Пробелы удалили вручную. Ваш скрипт сохранил, может еще понадобится.
Спасибо
Quote from: argonaut2k at Oct 08, 2018, 12:49 PMА каким образом вы вообще умудрились сохранить ресурсы с пробелами в алиасе?
Для начала убедитесь в том что при сохранении ресурса алиас генерируется корректно, происходит замена пробелов на допустимые символы (по умолчению: -).
Используйте дополнение CONSOLE, выполните простейший скрипт:
$template = 1; // Заменить на id шаблона документов для пересохранения $resources = $modx->getCollection('modResource',array('template' => $template)); foreach ($resources as $res) { $res->save(); }
$template = 1; // Заменить на id шаблона документов для пересохранения $resources = $modx->getCollection('modResource', array( 'template' => $template )); foreach($resources as $res) { $tv = $res->getTVValue('idTV'); // idTV - id TV параметра $tv = str_replace(' ', '-', $tv); $res->setTVValue('idTV', $tv); $res->save(); }