Как удалить слэш в теге <link> в 1С-Битрикс для валидации W3C

Как удалить слэш в теге <link> в 1С-Битрикс для валидации W3C
Пошаговое руководство по удалению лишнего слэша в теге <link> в 1С-Битрикс для соответствия стандартам W3C. Улучшите валидность и SEO вашего сайта.
📅 25 марта 2023
👁🗨 480

Валидная вёрстка — важный аспект современной веб-разработки. После проверки сайта в валидаторе W3C я столкнулся с необязательным предупреждением о лишнем слэше в теге <link> при подключении CSS-файлов. В этой статье я расскажу, как найти и исправить файл, генерирующий этот тег в 1С-Битрикс, чтобы избавиться от лишнего слэша и сделать код валидным.
При подключении CSS-файлов в 1С-Битрикс система генерирует тег с лишним слэшем в конце, что не соответствует современным стандартам W3C. Пример такого тега:
<link href="/bitrix/cache/css/….css" type="text/css" data-template-style="true" rel="stylesheet" />
Валидатор W3C выводит предупреждение, что слэш в конце тега больше не требуется. Хотя это не критическая ошибка, исправление сделает ваш код более аккуратным и соответствующим стандартам.
1. Найдите файл, отвечающий за генерацию тега
В 1С-Битрикс за генерацию тегов отвечает файл:
/bitrix/modules/main/lib/page/asset.php
2. Измените код
Откройте файл asset.php и найдите строку (в моём случае это строка 195):
$this->xhtmlStyle = ($value === true ? '/':'');
Удалите слэш в одинарных кавычках, чтобы строка выглядела так:
$this->xhtmlStyle = ($value === true ? '':'');
3. Сохраните изменения
После внесения правок сохраните файл. Теперь система будет генерировать тег без лишнего слэша:
<link href="/bitrix/cache/css/….css" type="text/css" data-template-style="true" rel="stylesheet">