Дмитрий Иванов

Дмитрий Иванов

С нами с 23 октября 2014; Место в рейтинге пользователей: #182

Безопасность MODX, часть 2 - использование @ привязок

Это вторая часть доклада с конференции MODX Meetup Moscow. С первой частью про обход фильтрации MODX тегов можете ознакомиться тут.
Евгений Борисов
30 сентября 2018, 22:23
modx.pro
9
1 521
+26

Безопасность MODX, часть 1 - обход фильтрации MODX тегов

Это первая часть доклада с конференции MODX Meetup Moscow. Информацию решил разбить на 2 статьи посвященных разным векторам атак. Полная запись доклада доступна в ВК, а на ютубе запись моего экрана. Ну и естественно слайды.
Евгений Борисов
30 сентября 2018, 21:35
modx.pro
12
2 472
+30

Как настроить Babel, чтобы не было мучительно больно

Один день проведённый на modx.pro показал, что у людей очень много проблем с дополнением Babel. Люди боятся его за сложность настройки. На самом деле всё не так страшно. Эта статья, надеюсь, поможет при создании мультиязычных сайтов. Целью этой статьи не является разбор, чем одно дополнение лучше другого, это именно инструкция: как сделать.
Янис
12 сентября 2018, 10:03
modx.pro
21
5 151
+12

Множетственная ReCaptcha2 на 1 стр + Ajaxform

Добрый день! Вдохновленный заметкой и комментарием Андрея в ней, я решил немного по подробнее расписать про особенности подключения Google ReCaptcha 2 для использования в MODX Revolution c дополнением AjaxForm и FormIt.


Под катом пример с картинками.
Sergey Leleko
17 мая 2017, 11:11
modx.pro
33
5 463
+12

Расширение фильтрации mFilter2 для тегов Tagger

mFilter2 — фильтрация найденных результатов.
Tagger — система управления тегами.

[[!mFilter2?
    &filters=`
        tagger|3:tgroup,
        tagger|1:tgroup,
        tagger|2:tgroup
    `
    &aliases=`
        tagger|3==cars,
        tagger|1==colors
    `
]]

3,1,2 — группы тегов Tagger-а.
Виталий Серый
01 апреля 2017, 11:39
modx.pro
20
2 535
+8

Просмотры страниц на Tickets в виджете админки

Попросили меня в предыдущей статье привести свой вариант виджета используя просмотры Tickets, но не вписался в комментарий и написал отдельный топик.



Подумал, что лучше всё-таки использовать pdoResources, чтобы выводило не только тикеты, а любую страницу сайта.

Вот моё готовое решение (нужны установленные pdoTools, Tickets):
Василий Столейков
02 февраля 2017, 10:00
modx.pro
30
3 877
+15

Семантически правильныe Breadcrumbs на pdoCrumbs

Верстая очередной проект для замороченных на SEO клиентов, столкнулся с тем, что pdoCrumbs конечно хорош в своей программной логике, но приведенные в документации примеры не совсем верно построены с точки зрения SEO и архитектуры HTML.

Под катом сам код, мои заметки и несколько полезных комментариев.



Николай Савин
27 января 2017, 19:12
modx.pro
50
10 399
+20

Автоматически разбивать sitemap.xml на файлы

Всем привет!
У меня сайте сейчас 15000 страниц, sitemap.xml формирую через pdoSitemap. Но сервер не позволяет вывести такое количество ссылок сразу, менять сервер на более мощный пока тоже не хочу.

Может есть решение автоматического разбиения sitemap.xml в формате www.sitemaps.org/ru/protocol.html#index на определенное задаваемое количество выводимых ссылок в каждом файле?
Александр
13 ноября 2016, 16:31
modx.pro
6
2 213
+1

Выборка пользователей по определенным параметрам

Здравствуйте.
Нужно получить выборку активных (не забаненых и т.д.) пользователей, со всеми их полями, принадлежащих группе с id 4, от имени которых (createdby) существуют ресурсы, принадлежащие контексту moscow и опубликованные в данный момент.
Нужен нормальный запрос с $modx->newQuery(). Что бы потом можно было foreach $users… $user->get('username') получил имя пользователя, или например дополнительное поле пользователя extended.specialisation и другие.

Я вроде верно написал запрос в обычном синтаксисе, помогите пожалуйста с xPDO или как его зовут))

SELECT u.username, ua.* FROM `modx_users` as u
LEFT JOIN modx_member_groups as g ON g.member = u.id
LEFT JOIN modx_site_content as c ON c.createdby = u.id
LEFT JOIN modx_user_attributes as ua ON ua.internalKey = u.id
WHERE g.user_group = 4
AND c.published = 1
AND u.active = 1
AND c.context_key = 'moscow'
GROUP BY u.id
Спасибо заранее!
Ivan
26 октября 2016, 18:04
modx.pro
3
2 325
0

Как выбрать ЛУЧШИЕ где комментов >= 10

Вывожу лучшие тикеты через mFilter2 с сортировкой по количеству комментариев примерно так (убрал всё лишнее чтобы не мешало):
{$_modx->runSnippet('!mFilter2', [
    'element' => 'getTickets',
    'sortdir' => 'DESC',
    'sortby' => 'comments',
    'leftJoin' => '{
		"Thread":{ "class":"TicketThread","on":"Thread.resource=Ticket.id" },
		"Comment":{ "class":"TicketComment","on":"Comment.thread=Thread.id AND Comment.parent = \'0\'" }
	}',
    'select' => '{
		"Comment":"COUNT(DISTINCT Comment.id) as comments"
	}',
])}

Есть 2 вопроса:
Василий Столейков
27 июня 2016, 06:00
modx.pro
4
1 602
0