В MODX для замены двоеточия на тире в псевдониме (alias) URL можно воспользоваться событием OnDocFormSave
. Это событие вызывается после сохранения документа в административной панели MODX и позволяет изменить необходимые данные в документе.
Для начала создайте новый плагин. Назовите его, например, "ReplaceColonWithDash". В настройках плагина укажите следующий код:
<?php $eventName = $modx->event->name; if ($eventName == 'OnDocFormSave') { $docId = $modx->event->params['id']; $doc = $modx->getObject('modResource', $docId); $alias = $doc->get('alias'); $newAlias = str_replace(':', '-', $alias); if ($newAlias != $alias) { $doc->set('alias', $newAlias); $doc->save(); } } return;
После создания плагина установите его активным в разделе "Плагины" в административной панели MODX. Затем создайте новый документ или откройте существующий и сохраните его. При сохранении, плагин будет вызывать событие OnDocFormSave
, которое заменит все двоеточия на тире в псевдониме (alias) URL документа.
Обратите внимание, что этот код заменит все двоеточия на тире в псевдониме URL, независимо от их положения в строке. Если вам нужно заменить только первое двоеточие, или заменять двоеточия только в определенном контексте, вам придется модифицировать предложенный код.