Очередное простенькое решение по минификации, на этот раз по минификации HTML для Modx Evolution и MODX Revolution. С одной стороны минификация HTML кода не является обязательным, в отличие от минификации CSS и JS. С другой стороны убрать лишние килобайты из кода HTML страницы не будет лишним.
Иногда сложно подобрать название для поста, но описать проблему, с которой постоянно сталкиваюсь, как-то иначе у меня не получилось. Суть проблемы, что если мною назначается основное зеркало, прописывается в .htaccess и после я случайно логинюсь в админку по дополнительному зеркалу, то я получаю массу артефактов как на Evolution, так и на Revolution. Так как каждый раз я начинаю искать причину, почему так происходит, а через полчаса чертыхаясь вспоминаю про данную проблему, решил написать этот пост.
Любой разработчик на MODX сталкивается с необходимостью добавления даты в код сайта. Как правило, это фата копирайта в футере или текущая дата в каком-то блоке информации. Дату можно обновлять в ручную, но это не эффективно и времязатратно. Можно выводить через сниппет, но это минимум плюс один запрос к базе данных, количество которых хочется держать по минимуму.
В последнее время все чаще встает необходимость в момент верстки задавать фиксированную ширину для пунктов меню. Почему в последнее время спросите вы? Не так давно начал осваивать адаптивную верстку, одна из концепций которой позволяет (а иногда вынуждает) задавать ширину в процентном соотношении. Плюсы подобного подхода в том, что при любом разрешении экрана мы получим именно тот размер, который нами был запланирован. Больше никаких непонятных переносов при изменении размера экрана.
В рамках работы по оптимизации одного проекта наконец дошли руки до внедрения Last-Modified на сайте с Modx Evolution. Внедрение правильной обработки данного заголовка не только будет сообщать о дате последнего изменения документа. Правильная реализация Last-Modified должна так же снизить нагрузку на сервер и положительно отразиться на индексировании сайта поисковыми системами, что напрямую следует из рекомендаций Яндекса. Возможно данное нововведение положительно отразится и на позициях сайта.
На протяжении многих лет для поиска по сайтам с установленной Modx пользовался доработанной под себя версией сниппета HyperFlexSearchForm. Шло время, поиск исправно работал, и всех все устраивало, пока на одном из посещаемых проектов не был установлен и настроен счетчик Google Analytics. Практически сразу аналитика показала, что поиск является явным узким местом сайта. Через месяц, после накопления статистики, стало видно, что порядка 80% пользователей уходят с поиска не получив нужной им информации. И тогда возник вопрос, как сделать полноценный поиск по сайту на Modx?
Сейчас уже прошли те времена, когда поисковые системы учитывали все переданные им GET параметры, как отдельные страницы сайта, при учете что на несуществующий GET параметр отдавался 200 заголовок сервера. Раньше можно было скормить, случайно или намеренно, поисковой системе список подобных несуществующих страниц, после чего количество одинаковых страниц в индексе значительно увеличивалось, что приводило к печальным последствиям, вплоть до того, что из индекса выпадала главная страница. Поисковые системы стали мудрее, однако иногда все таки подобная проблема встречается.
Вновь столкнулся с необходимостью сброса пароля, однако на этот раз уже с MODX Revolution. Заодно посмотрим, изменилось ли что-нибудь в хранении пользователей в MODX Revolution по сравнению с предыдущей версией. Сразу оговорюсь, в моем распоряжении сейчас версия Revolution 2.2.14.