Найти тему

Исправляем абсолютные ссылки на относительные в CMS Diafan

По умолчанию в CMS Диафан все ссылки на страницы, картинки и другие объекты размещеныые на этом же хостинге сохраняются с добавлением доменного имени к ним. Это по сути не хорошо и не плохо, и вообще мнгим не мешает жить. Однако, если необходимо делать отладку на тестовом хосте и потом просто копировать материалы на боевой хостинг, то могут возникать некторые затруденения в работе. Да и вообще не по фен-шую использовать в абсолютные ссылки на сайте.

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

Все решается добавлением одной строки кода в файле /includes/route.php в функции replace_id_to_link. Нужно добавить строку $path = ‘/’; после фрагмента кода:

if(IS_ADMIN)
{
$path = BASE_PATH;
}
else {
$path = BASE_PATH_HREF;
}

Чтобы получилась следующая запись:

if(IS_ADMIN)
{
$path = BASE_PATH;
}
else {
$path = BASE_PATH_HREF;
}
$path = '/';

И все! Теперь все ссылки будут автоматом относительными.

Да, поправить BASE_PATH и BASE_PATH_HREF в файле конфигурации не мопожет, т.к. на эти констатны завязаны другие моменты в коде ядра.