Да бы не было мистики в головах, проблема скорее всего крайне прозаическая. habrahabr.ru/post/198312/ — с версии php 5.5 был удален пакет для работы json. Вернее вынесен в отдельный пакет-расширение, которое ставится как зависимость (на нормальной системе на linux). Крайней рекомендую один раз сесть и разобраться, как работает VirtualBox и настраивать окружение такое же, как и на хостинге, т.е. на linux. Это убережет в дальнейшем от глупых и непонятных вопросов.
Да и описали бы что хотели сделать (задачу), а то ошибка и все. Я тоже какой-то код могу вставить и говорить, у меня ничего не работает, помогите.
Мои предположения, что код minishop подключается ниже, чем ваш вызываемый код. Плагины подключают скрипты в конце страницы, а в вашем случае ваш вызов скорее всего в начале, следовательно на момент загрузки вашего скрипта на странице еще нет объекта minishop2, потому и ошибка.
По 2-му вопросу, все логику делаете в самом шаблоне этой страницы. Если используете Fenom, то с ним несколько проще. Но на деле можно проверить так. Если в плейсхолдере user.id есть значение, значит у нас страница пользователя и нужно показать карточку юзера, если нет, то вывести список всех пользователей через pdoUsers. Т.е. обычный if.
Насчет 3 не совсем понял, но определить пользователя по ID или useraname — это дописать условие в проверки в плагин. Если пришли цифры (можно проверить регулярным выражением или просто проверить на целое число функцией php), то искать пользователя по ID, иначе по username. Следовательно, если не нашлось, 404, нашлось — все тоже самое. Данные в плейсхолдеры, в шаблоне условия.
Ну а как записать юзеру параметр, как его ссылку показывать, ну так тут можно или доп поля испльзовать или системные настройки уровня пользователя (я у себя из использую, так как отдельная таблица, проще иногда работать, modx_users_settings).
Я постарался прокомментировать свой плагин (сделан по тем же примерам) gist.github.com/Alroniks/e94bb0b997bbb55d02f94e72bc62a64c
modcasts.video/
Пока 2 урока, но начало положено, технические процессы отлажены.
есть же API вызов $modx->cacheManager->refresh();
Но тем не менее это не отменяет проблемы генерации карты из своих объектов. По крайней мере pdoSitemap так не умеет, только через pdoResources и со своими шаблонами.
У меня задача пока в плане стоит, как разберусь и перепишу, отправлю фикс в основную ветку pdoTools.
habrahabr.ru/post/198312/ — с версии php 5.5 был удален пакет для работы json. Вернее вынесен в отдельный пакет-расширение, которое ставится как зависимость (на нормальной системе на linux). Крайней рекомендую один раз сесть и разобраться, как работает VirtualBox и настраивать окружение такое же, как и на хостинге, т.е. на linux. Это убережет в дальнейшем от глупых и непонятных вопросов.
Есть лог ошибок в MODX, там как правило все ошибки написаны и описаны, нужно только не лениться разобраться. Если вы создаете в админке тикеты, то там не может не быть кнопки сохранить, максимум что может быть — это disabled кнопка. Показывайте скриншот что ли, а то пока не понятно. Ну и лог ошибок.