Сергей Шлоков
С нами с 31 января 2013; Место в рейтинге пользователей: #54 часа назад
Век живи, век учись. Спасибо большое за помощь
Fenom вывод ТВ множественный выбор, слипается, не разделяется 2
4 часа назад
Вроде логично: проверить на пустоту все ТВ и есть все пустые не показывать блок.
Как сделать проверку по нескольким полам 1
7 часов назад
Хорошая идея, так как я вижу по вебвизору на десктопе много людей смотрят сайт не кликая на закрытие плашки с уведомлением о куки. Т.е если с самого н...
Плашка о использовании cookie файлов на сайте 6
Вчера в 19:57
Пишется небольшой сниппет, который получает список «непустых» категорий. Перечень ID кладем в плейсхолдер.
Запускаем сниппет ДО вызова pdoMenu
В pd...
Как скрыть пустые категории MiniShop2? 3
29 мая 2025, 16:19
Данная версия будет бесплатной всегда, задумывал ее как базовую версию. Я скоро выпушу платный вариант с расширенным функционалом, где будет возможнос...
IskWaf - Простой Web Application Firewall для MODX 3
28 мая 2025, 17:44
Данная проблема была на двух сайтах на reg.ru около 2 месяцев назад, высокая нагрузка на ЦП, решалось удалением папок и файлов observer, через top нах...
Вирусы майнеры 31
27 мая 2025, 15:45
Решение: В контроль доступа был добавлен контекст web с правами «Load Only».
При этом содержимое контекста не появилось в списке
Редактор страницы ckeditor 1.4.7-ce от modstore.pro 1
В общем, задача — чтобы pdoTools всегда использовал указанный в системной настройке парсер, который может быть pdoParser, SmartyParser (есть в ZoomX) или TwigParser (если такой будет).
И ещё, очень плохая идея держать лог ошибок в открытом доступе. Программистам по рукам давать надо.
Проблемы надо решать по мере их поступления. Вот Алексей споткнулся об гигабайтную таблицу и предложил решение. Но опять же, оно нужно не всем, а только тем, у кого аналогичная проблема. Остальным можно не париться.
Ну а отдельная таблица — это явный оверхед. Тогда уж лучше передавать в форму зашифрованные данные из параметров сниппета в скрытый инпут. В этом случае оверхеда будет гораздо меньше.
Т.е. если для 98% пользователей решение отлично подходит, но для 2-х% нет, то его нужно выбросить в пропасть. Ибо это оскорбляет эти 2%. Это не они должны адаптировать решение, а остальные 98%.
А ещё можно в догонку спросить? Сколько дополнений Вы создали?
П.С. Я спрашиваю абсолютно по-дружески. )
Сессии — это просто инструмент. Всё зависит от того, как им пользоваться. Вот из коробки в сессии пишутся группы ресурсов и группы пользователей. В итоге возникает проблема консистентности данных после изменения этих настроек. Это плохое использование сессий. А в ajaxForm использование сессий вполне обосновано.
И это глобально никак не влияет на разрастание таблицы сессий.
По большей части проблема или в неправильной настройке сборщика мусора (не зависит от MODX) или в ботах (о чём писал Алексей в своей статье), ибо каждый запрос бота вызывает создание новой записи в таблице. С гостями особой проблемы нет — запись создаётся только один раз и будет использоваться в течение 7 дней, потом будет удалена и создана другая (разговор про один браузер и стандартные настройки). Пример как игнорировать ботов и не создавать для них сессии есть у меня на сайте.
П.С. К слову, я не сторонник С-ишных названий с префиксом I. Да и суффикс Interface, наверно, всё-таки лишний. По-современному должно быть так — интерфейс SessionHandler, а реализации — modSessionHandler, AntibotSessionHandler и т.п.
Самый простой выход — через js в админке менять хандлер у этого пункта меню, в котором указать свой процессор (поправленную копию системного процессора).
Зачем? Теперь лишняя таблица в базе болтается. Для таких целей используют миграции. В MODX их нет, но можно расширить схему.
Писать в базу нефильтрованный USER_AGENT — это чтобы пощекотать себе нервы?
Ну и про наследование в ООП советовал бы почитать.
Режим «Николай Ланец» OFF. ))
А сам сниппет в 1 строчку