24 июля 2015, 16:09 ну да. например: $messageFields = [ 'test1' => '123', 'test2' => '321' ]; $message = $modx->getChunk('TestEmailTpl', $messageFields);и в чанке TestEmailTpl test1: [[+test1]] test2: [[+test2]]в итоге при использовании выведет test1: 123 test2: 321 Вопросы / Ручное подтверждение регистрации 15 0
24 июля 2015, 15:59 чанк создан для разделения оформления и непосредственно самого php-кода, можно и без чанка просто в эту переменную написать всё оформление. надеюсь, вместо «ваш_чанк» вы пишите название вашего чанка? и вообще, было бы не плохо показывать свой нерабочий код Вопросы / Ручное подтверждение регистрации 15 -1
22 июля 2015, 17:51 тупо берет циферку из настроек и показывает эту страницу (с помощью $modx->sendForward(вашициферки) ) $modx->sendUnauthorizedPage();вообще, я еще больше не понял, что вам нужно в итоге Вопросы / Возвратный url и плейсхолдеры в параметрах Login. 4 0
22 июля 2015, 16:55 попробуй использовать постхук rtfm.modx.com/extras/revo/login/login.tutorials/login.using-pre-and-post-hooks Вопросы / Возвратный url и плейсхолдеры в параметрах Login. 4 0
22 июля 2015, 11:40 я ж вам в предыдущем сообщение привел пример массива. суть в том, что в плагине нужно получить пароль, чтобы отправить его в письме, но это невозможно, поэтому необходимо генерировать его снова и записывать в аккаунт, тогда он сохраняется в нашей переменной и мы можем передать его в чанк Вопросы / Ручное подтверждение регистрации 15 0
22 июля 2015, 11:27 В этом случае придется генерить пароль за людей. как-то вот так: // генерим пароль $pass = $modx->user->generatePassword(); $user->set('password',$pass); $user->set('active','1'); $user->save(); $data_array = ['name' = $profile->get('fullname'), 'password' => $pass]; $message = $modx->getChunk('ваш_чанк', $data_array);если нужно брать пароль, который вводит пользователь, то надо писать не в плагин, а в постхук Login Вопросы / Ручное подтверждение регистрации 15 +1
22 июля 2015, 10:52 как отправить письмо: $message = $modx->getChunk('ваш_чанк', массив_переменных); // либо можно без чанка тело просто оформить $modx->getService('mail', 'mail.modPHPMailer'); $modx->mail->set(modMail::MAIL_BODY,$message); $modx->mail->set(modMail::MAIL_FROM,$modx->getOption('emailsender')); $modx->mail->set(modMail::MAIL_FROM_NAME,$modx->getOption('site_name')); $modx->mail->set(modMail::MAIL_SENDER,$modx->getOption('site_name')); $modx->mail->set(modMail::MAIL_SUBJECT,'тема письма'); $modx->mail->address('to',$email); // тут мыло кому отправляете $modx->mail->address('reply-to',$modx->getOption('emailsender')); $modx->mail->setHTML(true); if (!$modx->mail->send()) { $modx->log(modX::LOG_LEVEL_ERROR,'An error occurred while trying to send the email: '.$modx->mail->mailer->ErrorInfo); return false; } $modx->mail->reset();событие OnUserSave rtfm.modx.com/revolution/2.x/developing-in-modx/basic-development/plugins/system-events/onusersave я использую такой вариант: if ($modx->event->name === 'OnUserSave' && $mode === 'new') { так получаем мыло $profile = $user->getOne('Profile'); $email = $profile->get('email'); тут ваш код, либо мой, который выше } Вопросы / Ручное подтверждение регистрации 15 +2 1
16 июля 2015, 10:50 Глянь конфиги principal_targets и extension_packages Новые дополнения и их версии / [HybridAuth] Версия 0.9.0 с таблицей провайдеров 10 0
14 июля 2015, 17:00 щас сделал так: в сниппете принимаю все параметры и передаю их в pdoPage. вот так: $city = isset($_POST['city']) ? $_POST['city'] : ''; $service = isset($_POST['service']) ? $_POST['service'] : 'all'; $page = isset($_REQUEST['page']) ? $_REQUEST['page'] : '1'; $options = [ 'element' => 'pdoUsers', 'page' => $page, 'groups' => '4', 'tpl' => 'userCardPro', 'select' => '{"modUserSetting":"key, value as photop_add_date"}', 'innerJoin' => '{ "modUserSetting":{"class":"modUserSetting","on":"modUser.id=modUserSetting.user"} }', 'sortby' => 'photop_add_date', 'limit' => '9', 'sortdir' => 'asc' ]; $where=['"modUserSetting.key":"photop_add_date"']; if($city != '') $where[] = '"modUserProfile.city:LIKE":"%'.$city.'%"'; if($service != 'all') $where[] = '"modUserProfile.extended:LIKE":"%'.$service.'\":\"yes%"'; $options['where'] = '{'.implode(',',$where).'}'; $output = $modx->runSnippet('pdoPage',$options); echo $output.$modx->getPlaceholder('page.nav');но в этом случае не меняется заголовок страницы и урл Вопросы / как в pdoPage(ajax-версия) подключить свои фильтр? 1 0
14 июля 2015, 14:51 Если юзать чисто $modx->cacheManager->refresh();, то да, весь кеш чиститься, но я не просто так кинул тебе сцыль на доки. Посмотри там в конце примеры, эта конструкция принимает 2 параметра: $paths и $options Вопросы / Очистить кеш при создании страницы из фронтенда? 5 0
14 июля 2015, 10:40 Надо юзать $modx->cacheManager->refresh(); Подробнее про опции смотри тут rtfm.modx.com/revolution/2.x/developing-in-modx/advanced-development/caching Вопросы / Очистить кеш при создании страницы из фронтенда? 5 +1 1
06 июля 2015, 18:51 Тебе надо глянуть какие данные идут вместе с событием и их и использовать, а переменная $user->get — это данные текущего авторизованного пользователя Вопросы / Гость комментирует от имени пользователя 17 +1
06 июля 2015, 18:43 А почему ты используешь $user->get? о_0 вроде ж ты гостей проверяешь… Вопросы / Гость комментирует от имени пользователя 17 +2
11 июня 2015, 11:22 dateAgo точно установлен? Новые дополнения и их версии / easyComm - комментарии, отзывы, вопросы на сайте 536 0
11 июня 2015, 10:55 [[+date]][[*date]]не видите разницу? Новые дополнения и их версии / easyComm - комментарии, отзывы, вопросы на сайте 536 +1
27 мая 2015, 11:19 У меня пара вопросов: 1. просмотр страницы считается только зарегеным пользователем? Если да, то как сделать подсчет любого посетителя? 2. выставлять оценку могут тока зарегеные пользователи? Если да, то как сделать, чтобы могли все это делать? Новые дополнения и их версии / [Tickets] Версия 1.6.1-pl Рейтинги пользователей 193 0
25 мая 2015, 10:55 Лучше такое сделать плагином на событие OnUserRegister. Что-то типа такого: if ($modx->event->name == 'OnUserSave' && $mode=='new') { // генерим пароль $pass = $modx->user->generatePassword(); $user->set('password',$pass); $user->set('active','1'); $user->save(); // получаем мыло $profile = $user->getOne('Profile'); $email = $profile->get('email'); // отправляем письмо $messageFields = [массив каких-то данных, например, логин и пароль]; $message = $modx->getChunk('UserRegEmailTpl', $messageFields); $modx->getService('mail', 'mail.modPHPMailer'); $modx->mail->set(modMail::MAIL_BODY,$message); $modx->mail->set(modMail::MAIL_FROM,$modx->getOption('emailsender')); $modx->mail->set(modMail::MAIL_FROM_NAME,$modx->getOption('site_name')); $modx->mail->set(modMail::MAIL_SENDER,$modx->getOption('site_name')); $modx->mail->set(modMail::MAIL_SUBJECT,'Благодарим за регистрацию'); $modx->mail->address('to',$email); $modx->mail->address('reply-to',$modx->getOption('emailsender')); $modx->mail->setHTML(true); if (!$modx->mail->send()) { $modx->log(modX::LOG_LEVEL_ERROR,'An error occurred while trying to send the email: '.$modx->mail->mailer->ErrorInfo); return false; } $modx->mail->reset(); } Вопросы / Отправка на почту пароля, без активации 12 +2 5
30 апреля 2015, 14:59 pThumb — всем устраивает. ресайзер тоже юзаю, всё отлично Вопросы / [Холивар] Чем лучше обрезать картинки? 12 0
22 апреля 2015, 14:44 У мя там в коде есть "// скрыть/показать пункты", глянь его. Я это сделал через дополнительный properties Новые дополнения и их версии / Новый YandexMaps v1.1.1 75 0
22 апреля 2015, 10:39 Глянь еще как отображается карта при clusterize: true, я у себя отключил по просьбе начальства, хотя мне нравится. Тут собственно зачем они придумали ObjectManager habrahabr.ru/company/yandex/blog/243665/ Новые дополнения и их версии / Новый YandexMaps v1.1.1 75 0
gtsAPI 1.1.7 — таблицы на TanStack, инлайн-редактирование как в Excel Prime Vue datatable тупит на 200+ строк и в виртуальном скролинге высота полей фиксирована. Вот нам в итоге и не подошло. Директор сказал расчет должен сразу показываться без пагин...
mxApi — быстрый внешний API для MODX Revolution • зафиксировать публичный контракт EndpointInterface / метаданных по semver, чтобы наш провайдер не ломался на обновлениях;Фактически это уже так, beta стоит просто на всякий случа...
YaSmartCaptcha - защитите ваши формы от спама умной капчей от Яндекс Вообще не понял о чем речь) В системной настройке service_js сейчас указана ссылка smartcaptcha.cloud.yandex.ru/captcha.js Я предложил очистить эту настройку, тогда компонент н...
mxBackup — обезличенные копии MODX в пару кликов Ещё нет, я там разом почти полтора десятка пакетов выложил модератор, вероятно, а шоке.
Gallery3x 3.4.0 - вставка галерей прямо из визуального редактора (CKEditor и TinyMCE RTE) Здравствуйте. Есть консольный скрипт Вот почитайте: docs.ivan345.com/books/gallery3x/page/import-ms2galleryphp
[mSync] Новая версия синхронизации с 1С Всем привет. В какой то момент начали сыпаться ошибки: Error 23000 executing statement: INSERT INTO `modx_msync_products` (`product_id`, `uuid_1c`) VALUES ...
и в чанке TestEmailTpl
в итоге при использовании выведет
надеюсь, вместо «ваш_чанк» вы пишите название вашего чанка?
и вообще, было бы не плохо показывать свой нерабочий код
вообще, я еще больше не понял, что вам нужно в итоге
суть в том, что в плагине нужно получить пароль, чтобы отправить его в письме, но это невозможно, поэтому необходимо генерировать его снова и записывать в аккаунт, тогда он сохраняется в нашей переменной и мы можем передать его в чанк
если нужно брать пароль, который вводит пользователь, то надо писать не в плагин, а в постхук Login
событие OnUserSave rtfm.modx.com/revolution/2.x/developing-in-modx/basic-development/plugins/system-events/onusersave
я использую такой вариант:
но в этом случае не меняется заголовок страницы и урл
Подробнее про опции смотри тут rtfm.modx.com/revolution/2.x/developing-in-modx/advanced-development/caching
1. просмотр страницы считается только зарегеным пользователем? Если да, то как сделать подсчет любого посетителя?
2. выставлять оценку могут тока зарегеные пользователи? Если да, то как сделать, чтобы могли все это делать?
Тут собственно зачем они придумали ObjectManager habrahabr.ru/company/yandex/blog/243665/