Минификация html, убираем пробелы и переносы

Алексей Будагов,
Минификация html, убираем пробелы и переносы

Простой способ пройти еще одну проверку от Google Pagespeed, разгрузить посетителей и место на хостинге (если используете композит)

Вставляем в init.php код:

\Bitrix\Main\EventManager::getInstance()->addEventHandler("main", "OnEndBufferContent", "removeSpacesAndTabs");

/**
 * Удаляет табы и лишние пробелы из html кода
 *
 * @param $content
 */
function removeSpacesAndTabs (&$content) {
	global $APPLICATION;
	if (!$APPLICATION->GetShowIncludeAreas()) {
        	$content = preg_replace("/\s+/", " ", $content);
	}
}

Простыми словами. После формирования html на стороне сервере (событие OnEndBufferContent), скрипт делает замену переносов строки , отступов (табов) и пробелов на один пробел, но при условии, что не включен режим правки (перестает работать при таких заменах).

Опубликовано 28 Апреля 2018 | Обновлено 25 Февраля 2019
производительность

Возврат к списку

Комментарии