Abu
С нами с 24 декабря 2012; Место в рейтинге пользователей: #89Генерация PDF на основе данных с формы в MODX Revo
Довольно часто возникает необходимость генерировать pdf на основе данных с формы.
Ниже небольшое решение как это сделать если стоит пакет ExportPage
Ниже небольшое решение как это сделать если стоит пакет ExportPage
pdoFetch поиск в TV-полях с разделителем ||
Наверняка много кто использовал в своей практике TV-поля типа «Список» (множественный, одиночный, не важно) или «Тег». Здесь важно именно то, в каком виде в базе данных хранятся данные таких полей, ведь они сохраняют множественные значения. А хранят они их одной общей строкой в той же самой таблице ТВшек (естественно, по одной записи на один документ). К примеру, если мы отметили три значения 100, 1005, 10, в БД это запишется 100||1005||10. И здесь возникает вопрос как потом выполнить поиск по таким полям? Простой LIKE здесь не поможет, так как LIKE %100%, к примеру, найдет и '100||1000' и '1001||1005'. Данного вопроса мы уже касались здесь и подобный вопрос опять возник здесь.
временно отключить комментарии в Tickets
Доброго времени суток! Гуглил и искал по сайту, не могу найти ответ на вопрос,
1)как админу или контент менеджеру временно отключить комментарии? Например если активно спамят боты и он не может справится, либо просто на ночь, так как уходит с работы. Не учить же удалять из кода вызов сниппета? тем более у него доступы к элементам закрыты.
Просто подключать премодерацию не супер, комментарии будут копиться в админке и на почте.
2) Можно ли отключить почтовое уведомление автору тикета о комментарии? если их под 100 к одному посту, видимо надо менять почту :)
3) И последний вопрос, решил задать все сразу. Пользуясь готовыми решениями на сайте, подключил плагин уведомление, о комментария на модерации, вообще тема, просто супер! Но, при переходе в тикеты, не видно новых, если премодерации нет, а если есть все равно не понятно, к какому они посту добавились, если постов много и комментариев везде больше 30.
1)как админу или контент менеджеру временно отключить комментарии? Например если активно спамят боты и он не может справится, либо просто на ночь, так как уходит с работы. Не учить же удалять из кода вызов сниппета? тем более у него доступы к элементам закрыты.
Просто подключать премодерацию не супер, комментарии будут копиться в админке и на почте.
2) Можно ли отключить почтовое уведомление автору тикета о комментарии? если их под 100 к одному посту, видимо надо менять почту :)
3) И последний вопрос, решил задать все сразу. Пользуясь готовыми решениями на сайте, подключил плагин уведомление, о комментария на модерации, вообще тема, просто супер! Но, при переходе в тикеты, не видно новых, если премодерации нет, а если есть все равно не понятно, к какому они посту добавились, если постов много и комментариев везде больше 30.
Добавление тегов с фронта через форму Tickets
Здравствуйте. Не судите строго, пишу скорее как памятку для себя, но может быть кому пригодится.
Простое решение для добавления тегов с фронта в форму Tickets.
Простое решение для добавления тегов с фронта в форму Tickets.
Расширение любых таблиц MODX
В очередной раз понадобилось изменить таблицу сайта, менять которую не предусмотрено.
Что обычно люди делают в таких случаях? Верно, редактируют ядро или нужный компонент, и больше их не обновляют. Но ведь это неправильно, и можно решить вопрос иначе.
Пишем обычный плагин, выставляем для него событие OnMODXInit и меняем модель для нужных классов системы или дополнений. Например, я добавил id менеджера в заказ miniShop2:
Что обычно люди делают в таких случаях? Верно, редактируют ядро или нужный компонент, и больше их не обновляют. Но ведь это неправильно, и можно решить вопрос иначе.
Пишем обычный плагин, выставляем для него событие OnMODXInit и меняем модель для нужных классов системы или дополнений. Например, я добавил id менеджера в заказ miniShop2:
[Решено] Fenom и вызов полей пользователя
В документации есть пример вызова текущего пользователя через {$_modx->user}
Но как вызвать произвольного пользователя, по id?
Есть ли для этого быстрые феномовские штучки, или прийдётся писать сниппет, и уже его запускать через феном?
Но как вызвать произвольного пользователя, по id?
Есть ли для этого быстрые феномовские штучки, или прийдётся писать сниппет, и уже его запускать через феном?
Компонент источник файлов Dropbox
Извиняюсь за то, что просто ссылку напишу, но наверняка кому-то пригодится. http://modxclub.ru/topics/dropbox-2.0.0-beta-1317.html
Fenom + MobileDetect + NGINX + PHP5-FPM = 502 bad gateway
Здравствуйте.
Столкнулся с такой проблемой. У меня установлен Fenom, MobileDetect. Я разбил в чанке "layout" основную и мобильную версии тегами. Захожу на главную страницу — 502 ошибка. В логах nginx вот такое:
Самое интересное, когда отключаю плагин MobileDetect — всё работает. Помогите, пожалуйста, побороть эту неприятность.
Решение в комментариях.
Столкнулся с такой проблемой. У меня установлен Fenom, MobileDetect. Я разбил в чанке "layout" основную и мобильную версии тегами. Захожу на главную страницу — 502 ошибка. В логах nginx вот такое:
2015/08/24 13:24:23 [error] 9787#0: *216565 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: *2.**.*20.*9, server: kfm.****.kz, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-kfm2.sock:", host: "kfm.****.kz", referrer: "http://kfm.****.kz/manager/?a=element/template/update&id=1"
Пояндексил — пишут, что это из-за ошибки в PHP. Nginx как бы сообщает, что PHP не отдал ему ответ.Самое интересное, когда отключаю плагин MobileDetect — всё работает. Помогите, пожалуйста, побороть эту неприятность.
Решение в комментариях.
miniShop2 tagger
Привет! у меня хорошая новость, получилось связать два отличных дополнения — miniShop2 и tagger. Всего то и нужно что написать плагин с кодом: gist.github.com/soulcreate/f8cf1a17fa823917db35.
Соответственно фильтры для mFilter2 для этой связки:
gist.github.com/soulcreate/bcb28e703652468c01d3
PS: при написании плагина очень помог вот этот код: 2geek.pro/solutions/71-dopolnitelnyie-polya-k-tovaru-minishop2
Соответственно фильтры для mFilter2 для этой связки:
gist.github.com/soulcreate/bcb28e703652468c01d3
PS: при написании плагина очень помог вот этот код: 2geek.pro/solutions/71-dopolnitelnyie-polya-k-tovaru-minishop2
Создание мультисайта на MODX REVO
Лучше поздно, чем никогда. Как и обещал https://modx.pro/help/5194/ пишу про создание мультисайта на MODX REVO. Выкладываю в блог Готовые решения, т.к. в статье есть чуть-чуть кода.
Смысл всей затеи — упростить поддержку сайтов.
Под поддержкой понимаются любые действия связанные с работой сайта:
— размещение контента
— технические доработки сайта (программирование, верстка)
— консультирование модераторов, сеошников и т.д.
— бэкапы и восстановление информации
Кроме того, для упрощения работы необходимо внедрить стандарты, чтобы упростить рутину. Звучит громко, но на самом деле все просто — по «узким» моментам единожды принимаем какое-то решение и дальше просто поступаем по образцу, чтобы не тратить время на изобретение велосипедов. По принятому решению пишем короткую заметку в Евернот, чтобы потом когда понадобится можно было быстро найти, на чем основывалось решение.
В таких «стандартах» у меня:
— ресайз картинок с примерами кода
— настройки галереи fancybox с примерами кода
— создание файловых архивов
— названия чанков, например почти везде у меня есть чанки HEADER.site1, FOOTER.site1, ASIDE.site1 (в названии используем название контекста).
— и т.д. и т.п.
Т.е. единожды продумываем тонкости и решаем, что будем делать именно так и никак иначе. В дальнейшем это позволит избежать бардака и существенно ускорит процесс переноса существующих сайтов в мультисайт или разработку новых сайтов.
Смысл всей затеи — упростить поддержку сайтов.
Под поддержкой понимаются любые действия связанные с работой сайта:
— размещение контента
— технические доработки сайта (программирование, верстка)
— консультирование модераторов, сеошников и т.д.
— бэкапы и восстановление информации
Кроме того, для упрощения работы необходимо внедрить стандарты, чтобы упростить рутину. Звучит громко, но на самом деле все просто — по «узким» моментам единожды принимаем какое-то решение и дальше просто поступаем по образцу, чтобы не тратить время на изобретение велосипедов. По принятому решению пишем короткую заметку в Евернот, чтобы потом когда понадобится можно было быстро найти, на чем основывалось решение.
В таких «стандартах» у меня:
— ресайз картинок с примерами кода
— настройки галереи fancybox с примерами кода
— создание файловых архивов
— названия чанков, например почти везде у меня есть чанки HEADER.site1, FOOTER.site1, ASIDE.site1 (в названии используем название контекста).
— и т.д. и т.п.
Т.е. единожды продумываем тонкости и решаем, что будем делать именно так и никак иначе. В дальнейшем это позволит избежать бардака и существенно ускорит процесс переноса существующих сайтов в мультисайт или разработку новых сайтов.