Делаем валидными автоподключения js-файлов в MODX

  • Главная
  • Блог
  • Делаем валидными автоподключения js-файлов в MODX

Не секрет, что любой из компонентов норовит подключить свои js-скрипты на страницу. Но такая самодеятельность не нравится валидатору w3c из-за устаревшего вида подключения, который уже стал невалидным:

<script src="/assets/components/ajaxform/js/default.js"></script>

Валидатор соответственно ругается:

Валидатору не нравится type

Чтобы угодить валидатору, нам нужно избавиться от части 

type="text/javascript"

Но как это сделать, если в шаблоне мы не находим большинства подключаемых js-файлов? Все они подключаются на лету различными плагинами.

Пишем плагин

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

Пишем плагин на событие OnWebPagePrerender:

<?php

switch ($modx->event->name) {
	case 'OnWebPagePrerender':

		$output = &$modx->resource->_output; // перехватываем содержимое страницы
		$output = str_replace('',"",$output);  // удаляем ненужную часть

		break;
}

и вуаля! Задача решена, валидатор счастлив, мы вздыхаем с чувством выполненного долга. 

30 октября 2018, 00:01
32

Администратор в BazMaster Studio. Люблю создовать сайты на MODX и постоянно в нём совершенствуюсь.




Комментарии ()