Создание версии для слабовидящих на MODX и Joomla


Суббота, Май 20, 2017

 

В своей практике я всё чаще сталкиваюсь с необходимостью создания версии сайта для слабовидящих и не удивительно. Наличие версии для слабовидящих обязательно для всех сайтов государственных учреждениях. Сама по себе задача не из простых - ведь для создания полноценной версии нам нужно практически создать абсолютно новые версии стилей и избавиться от фреймов. В своей практике я сталкивался на двух сайтах и на двух разных командных системах - Joomla и MODX. И хотя я искренне люблю MODX, и искренне не люблю Joomla, должен отметить, что на Joomla задача была выполнена гораздо быстрее и проще. Но для начала рассмотрим обра примера, чтобы вы сами могли сделать выводы.

Законодательство о версии для слабовидящих

Со стороны законодательства, версии для слабовидящих регулирует ГОСТ 52872-2012. Именно в нём можно посмотреть все требования. Выделим для себя основное:

  1. Пользователю необходима возможность выбирать цветовую схему, размер шрифта и включение отключение графики;
  2. Увеличенный контраст, крупный текст, отсутствие фоновых изображений;
  3. Избавление от фреймовой структуры;

Создание версии для слабовидящих в MODX

Для решения поставленной задачи, нам понадобится небольшой набор инструментов:

  1. Сниппет Switch из официального MODX репозитория;
  2. Два самописных сниппета;

Принцип работы построен таким образом, что человек переходит по ссылке на специальную страницу, где срабатывает сниппет, и автоматически редиректит его обратно на предыдущую страницу. После чего, в куки у него появляется запись об используемой в настоящее время теме. Ссылка возврата на обычную версию аналогична. Ссылки меняются по средствам работы сниппета Switch, который в зависимости от темы выдаёт ту или иную ссылку. Пример вызова:

Здесь мы видим, как меняется таблица стилей в зависимости от темы. Также можно избавляться от фреймов и прочего ненужного содержимого - графики, лишних блоков и тд.

Теперь самописные сниппеты, которые нам понадобятся для установки нужной темы.

ShowTheme

return $modx->getOption('theme', $_SESSION, 'default');

Сниппет просто выводит название используемой нами темы.

ControlTheme

$theme = $modx->getOption('set', $scriptProperties, false);
$referer = $modx->getOption('HTTP_REFERER', $_SERVER, '');
if ($theme) {
$_SESSION['theme'] = $theme;
$modx->sendRedirect($referer);
}

Запись в куки текущей темы. Сниппет вызывается на ресурсе, который будет менять тему.

И так, теперь опишу весь алгоритм подробно в “живом примере”:

1. Создаём ссылку на ресурсы с использованием сниппета switch, меняющие наши темы в любом удобном для вас месте (У нас есть два ресурса : id 55 - Переход на версию для слабовидящих, id 56 - Переход на обычную версию):

2. В теге head у нас так же запрос с использованием сниппета switch, который меняет таблицу стилей в зависимости от темы.

3. Два ресурса содержат в себе вызов сниппетов на смену темы:

Ресурс 55:

Ресурс 56:

В принципе на этом всё. Единственная серьезная трудность в таком подходе, что тема устанавливается единожды и чтобы реализовать полноценную панель управления придётся попотеть и для каждой вариации делать свою тему. Так же проблематично будет кастомизировать все шаблоны под версию без фреймов. Именно из-за этих недостатков версия для слабовидящих в Joomla получилась у меня гораздо быстрее. Перейдём к ней.

Создание версии для слабовидящих в Joomla

Для работы в Joomla нам понадобится шаблон для слабовидящих и плагин для смены шаблонов. Основная работа что вы будете проводить по налаживанию работы, это расставление в шаблоне своих модулей, т.к. в нём нет ваших модулей. Это отдельный голый шаблон. Сам плагин даёт вам уже готовую панель управления, а шаблон соответствует требованиям законодательства.

Порядок действий по установке такой:

  1. Устанавливаете плагин;

  2. Включаете его в менеджере плагинов;

  3. Закидываете шаблон. Он имеет название accessibility.

  4. Создаём две ссылки для переключения версий сайта

<a href="/?template=accessibility">Версия для слабовидящих</a>

<a href="/?template=ИМЯВАШЕГОТЕКУЩЕГОШАБЛОНА">Обычная версия</a>

И размещаем ссылки в любом удобном месте. Всё. Живой пример реализации можно посмотреть на сайте Чебоксарского электромеханического колледжа одной из моих работ с Joomla.

Не забудьте разместить обратную ссылку на шаблоне версии для слабовидящих.

Заключение

Я надеюсь что данная статья поможет сэкономить ваше время в поисках информации по версии для слабовидящих. Если остались вопросы жду ваших комментариев.

 


Версия для слабовидящих в Joomla.zip 0 Размер: 295158 bytes