Модуль "Версия для слабовидящих" (Drupal 7). Drupal модуль для слабовидящих
Модуль "Версия для слабовидящих" (Drupal 7)
Всем привет!
Кто разрабатывал сайты для государственных, муниципальных, образовательных учреждений знает, что у сайта должна быть обязательно "версия для слабовидящих". Хочу предложить своё решение этого вопроса.
Думая над логикой модуля, чтобы всё не усложнять я пришел к следующему решению: проще всего сделать "версию для слабовидящих" отдельной темой оформления и переключать темы "на лету". Необходимо установить и подготовить тему оформления, которая будет "для слабовидящих". В admin/appearance/settings выбрать эту тему.
Модуль используется только для создания блоков переключения на тему для слабовидящих и обратно. Сама панель с кнопками теперь находится в теме оформления и выглядит вот так:
Модуль после включения создаёт 2 уже готовых блока: "версия для слабовидящих"
и "обычная версия".
Первый нужно разместить на обычной теме оформления, а второй соответственно на "версии для слабовидящих". Вот собственно и всё, с помощью этих двух блоков мы переключаем тему оформления.
С помощью CSS можно изменить изображения на кнопках в блоках.
Что делать, если модуль не работает?
Топ 3 проблем:1) Не выбрана тема в admin/appearance/settings2) Библиотека jQuery подключаемая из каталога с темой. Если вам нужна другая версия, отличная от той, что идет в ядре, используйте модуль jquery_update, а не подключайте самостоятельно!3) Проверьте все подключаемые в теме JS-файлы. Народные "умельцы" любят подключать различные JS-файлы, которые часто написаны не по стандартам кодирования Drupal и приводят к ошибке работы других модулей (хотя сами работают).
Скачать модуль можно с официальной страницы проектаСкачать тему можно с официальной страницы проекта
Поучаствовать в разработке модуля можно на GitHubПоучаствовать в разработке темы можно на GitHub
Внести пожертвование на развитие модуля можно тут
drupal.ru
Модуль "Версия для слабовидящих" (Drupal 7)
Всем привет!
Кто разрабатывал сайты для государственных, муниципальных, образовательных учреждений знает, что у сайта должна быть обязательно "версия для слабовидящих". Хочу предложить своё решение этого вопроса.
Думая над логикой модуля, чтобы всё не усложнять я пришел к следующему решению: проще всего сделать "версию для слабовидящих" отдельной темой оформления и переключать темы "на лету". Необходимо установить и подготовить тему оформления, которая будет "для слабовидящих". В admin/appearance/settings выбрать эту тему.
Модуль используется только для создания блоков переключения на тему для слабовидящих и обратно. Сама панель с кнопками теперь находится в теме оформления и выглядит вот так:
Модуль после включения создаёт 2 уже готовых блока: "версия для слабовидящих"
и "обычная версия".
Первый нужно разместить на обычной теме оформления, а второй соответственно на "версии для слабовидящих". Вот собственно и всё, с помощью этих двух блоков мы переключаем тему оформления.
С помощью CSS можно изменить изображения на кнопках в блоках.
Что делать, если модуль не работает?
Топ 3 проблем:1) Не выбрана тема в admin/appearance/settings2) Библиотека jQuery подключаемая из каталога с темой. Если вам нужна другая версия, отличная от той, что идет в ядре, используйте модуль jquery_update, а не подключайте самостоятельно!3) Проверьте все подключаемые в теме JS-файлы. Народные "умельцы" любят подключать различные JS-файлы, которые часто написаны не по стандартам кодирования Drupal и приводят к ошибке работы других модулей (хотя сами работают).
Скачать модуль можно с официальной страницы проекта
Скачать тему можно с официальной страницы проекта
Поучаствовать в разработке модуля можно на GitHub
Поучаствовать в разработке темы можно на GitHub
Внести пожертвование на развитие модуля можно тут
dru.io
Модуль "Версия для слабовидящих" (Drupal 7)
Всем привет!
Кто разрабатывал сайты для государственных, муниципальных, образовательных учреждений знает, что у сайта должна быть обязательно "версия для слабовидящих". Хочу предложить своё решение этого вопроса.
Думая над логикой модуля, чтобы всё не усложнять я пришел к следующему решению: проще всего сделать "версию для слабовидящих" отдельной темой оформления и переключать темы "на лету". Необходимо установить и подготовить тему оформления, которая будет "для слабовидящих". В admin/appearance/settings выбрать эту тему.
Модуль используется только для создания блоков переключения на тему для слабовидящих и обратно. Сама панель с кнопками теперь находится в теме оформления и выглядит вот так:
Модуль после включения создаёт 2 уже готовых блока: "версия для слабовидящих"
и "обычная версия".
Первый нужно разместить на обычной теме оформления, а второй соответственно на "версии для слабовидящих". Вот собственно и всё, с помощью этих двух блоков мы переключаем тему оформления.
С помощью CSS можно изменить изображения на кнопках в блоках.
Что делать, если модуль не работает?
Топ 3 проблем: 1) Не выбрана тема в admin/appearance/settings 2) Библиотека jQuery подключаемая из каталога с темой. Если вам нужна другая версия, отличная от той, что идет в ядре, используйте модуль jquery_update, а не подключайте самостоятельно! 3) Проверьте все подключаемые в теме JS-файлы. Народные "умельцы" любят подключать различные JS-файлы, которые часто написаны не по стандартам кодирования Drupal и приводят к ошибке работы других модулей (хотя сами работают).
Скачать модуль можно с официальной страницы проекта Скачать тему можно с официальной страницы проекта
Поучаствовать в разработке модуля можно на GitHub Поучаствовать в разработке темы можно на GitHub
Внести пожертвование на развитие модуля можно тут
druio.examplesite.ru
Как мы делали версию для слабовидящих - Drupal
Отправлено 28 Июль 2015 - 07:05
Поступил заказ для созданного нами сайта сделать версию для слабовидящих. В качестве образца был дан
Пожалуйста, ВОЙДИТЕ или ЗАРЕГИСТРИРУЙТЕСЬ чтобы увидеть эту ссылку!
. Было принято решение не создавать отдельный поддомен, а сделать отдельную тему и для переключения тем использовать модульПожалуйста, ВОЙДИТЕ или ЗАРЕГИСТРИРУЙТЕСЬ чтобы увидеть эту ссылку!
(); foreach (switchtheme_options() as $name => $label) { $theme_title =Пожалуйста, ВОЙДИТЕ или ЗАРЕГИСТРИРУЙТЕСЬ чтобы увидеть эту ссылку!
('switchtheme_' . $name, $label); if ( $theme_title != $label && !Пожалуйста, ВОЙДИТЕ или ЗАРЕГИСТРИРУЙТЕСЬ чтобы увидеть эту ссылку!
Пожалуйста, ВОЙДИТЕ или ЗАРЕГИСТРИРУЙТЕСЬ чтобы увидеть эту ссылку!
($options); return $options; }Таким образом, в форму попадают только те темы, у которых наименование изменено или оно не пустое. (в принципе, достаточно одного условия). Настраивается в admin/config/user-interface/switchtheme
Для 1.3 правили функцию switchtheme_switch_form . Из массива тем удалили текущую и по умолчанию устанавливаем первую из оставшихся тем. В списке у нас осталась единственная тема, нужно только нажать на кнопку формы.
2. Тема для слабовидящих
Взяли простую тему, скопировали движок изменения шрифта/цвета/изображения с образца.
Приняли решение оставить только основной регион, т.е. сделали в версии для слабовидящих сайт одноколоночным. Также, убрали красоты в виде каруселей, слайдеров, модальных окон и т.д. Полностью от скриптов не отказались, используется Аккордеон и простые скрипты "скрыть/показать". Полностью изменили главную страницу, а также некоторые вьювы.
Форму переключения темы скрыли, добавили ссылку, которая при помощи скрипта "нажимает" на кнопку формы. В отличие от варианта с поддоменом, переключение между темами приводит на ту же самую страницу, а не на главную страницу сайта. Единственное, при переключении на главную страницу, попадаем на /node .
3. Тестирование и внедрение
Сначала открыли блок с переключением ноды только для администраторов. Для анонимов сделали специальную страницу и открыли блок там. Все работало безукоризненно. Когда открыли ссылку на всех страницах и для всех пользователей, выяснилось, что анонимы после переключения попадают на произвольные страницы. После отключения кеша друпала для анонимов и кеширования блоков, проблема ушла (для авторизованных все было нормально).
Но теперь появились вопросы производительности. На помощь пришел модуль
Пожалуйста, ВОЙДИТЕ или ЗАРЕГИСТРИРУЙТЕСЬ чтобы увидеть эту ссылку!
($_SESSION['custom_theme']) && $_SESSION['custom_theme'] ) { $GLOBALS['conf']['cache'] = FALSE; drupal_page_is_cacheable(FALSE); }Теперь, кеш отключался только для анонимов, которые пользовались темой для слабовидящих. В настройках производительности было вновь установлено "Кэшировать страницы для анонимных пользователей".
4. Заключение
Время на работу было мало, в целом в сроки уложились, мелкие доработки темы делаем до сих пор. Ссылку на сайт не даю.
wolf-host.ru