Kirill · 05 марта 2020, 08:15 спасибо. поправил в 3 файлах components/faq/model/faq/mysql/faqitem.map.inc.php components/faq/model/bd_faq/mysql/bd_faqitem.map.inc.php components/faq/model/schema/faq.mysql.schema.xml тип на string и все заработало Вопросы / Реализация раздела "Вопрос - ответ" 34 0 1
Александр Туниеков · 04 марта 2020, 23:49 Известная проблема :-) В файле faq.mysql.schema.xml <field key="question" dbtype="text" length="1023" phptype="text" null="false" default=""/>phptype=«text» нет такого. Когда-то работало, а сейчас надо phptype=«string». Замените phptype=«text» на phptype=«string» везде в схеме и перегенируйте классы XPDO. Я с помощью migx это делаю. Создание таблиц через MIGX Вопросы / Реализация раздела "Вопрос - ответ" 34 +1 1
Владимир · 31 января 2019, 01:03 Спасибо, Евгений! Может для шаблона кому пригодится(копи/паст): {block 'title'} {'ms2_email_subject_new_manager' | lexicon : $order} <ul style="font-size: 15px;"> <li>Покупатель: [[+address.receiver]]</li> <li>Телефон: [[+address.phone]]</li> <li>Почта: [[+user.email]]</li> <li>Адрес: [[+address.city]], [[+address.street]], [[+address.building]], [[+address.room]]</li> <li>Способ доставки: [[+delivery.name]]</li> <li>Тип оплаты: [[+payment.name]]</li> <li>Комментрарий: [[+address.comment]]</li> </ul> <hr> {/block} Вопросы / Minishop2 и письма менеджеру 6 0 3
Владимир Викторович Доморецкий · 20 февраля 2018, 11:17 Плагин на событие OnFileManagerUpload <?php // проверяем нужное событие if ($modx->event->name != 'OnFileManagerUpload') {return;} // подключаем phpthumb require_once MODX_CORE_PATH.'model/phpthumb/phpthumb.class.php'; // параметры загружаемого файла $file = $modx->event->params['files']['file']; $directory = $modx->event->params['directory']; // получаем media source $ms = $modx->event->params['source']; if($ms == null){ return; } // настройки media source $msProperties = $ms->get('properties'); $directory = $msProperties['basePath']['value'].$directory; // на всякий случай проверяем наличие // и заменяем на / $directory = str_replace('//', '/', $directory); // настройки плагина $config = array( $directory => array( 'src' => array('w' => 1280,'h' => 1024,'zc' => 0,'q' => 80, 'fltr' => 'wmi|/watermark/logo.png|BR|50|5'), ), ); // смотрим, что при загрузке не возникло ошибок if ($file['error'] != 0) { //fwrite($handle,"Ошибка при загрузке файлов \n"); return; } $name = $file['name']; $extensions = explode(',', $modx->getOption('upload_images')); // проверям, что наша категория задана в настройках плагина if (array_key_exists($directory, $config)) { $config = $config[$directory]; } else { return; } // путь к файлу, имя файла, расширение $filename = MODX_BASE_PATH.$directory.$name; $def_fn = pathinfo($name, PATHINFO_FILENAME); $ext = pathinfo($name, PATHINFO_EXTENSION); // проверяем, что расширение файла задано в настройках MODX, как изображение if (in_array($ext, $extensions)) { $sizes = getimagesize($filename); $format = substr($sizes['mime'],6); // бежим по всем полям массива с конфигом foreach($config as $imgKey =>$imgConfig){ $options = ''; if($imgKey == 'src'){ // для ключа src имя файла совпадает с исходным $imgName = $filename; } else { // формируем имя файла $imgName = MODX_BASE_PATH.$directory.$def_fn.$imgKey.'.'.$ext; } // создаем объект phpThumb.. $phpThumb = new phpThumb(); // ..и задаем параметры $phpThumb->setSourceFilename($filename); foreach ($imgConfig as $k => $v) { $phpThumb->setParameter($k, $v); } // генерируем файл if ($phpThumb->GenerateThumbnail()) { if ($phpThumb->RenderToFile($imgName)) { //$source->renameObject($imgName, $newName); // устанавливаем права на файл, это опционально, зависит от сервера //chmod($imgName, 0666); } } } } else { return; }Этот плагин выкладывал Безумкин Василий, вот только не помню где. Не забудьте поменять настройки плагина под ваши потребности. Там не только ватермарк накладывается но и ресайз изображения делается. Вы можете оставить только наложения ватермарка. Вопросы / Как наложить водяные знаки (ватемарки) на загружаемые изображения в modx revo? 5 0 1
Андрей · 06 декабря 2017, 14:17 Зачем вы отправляете письма на тот же адрес, с которого идёт отправка? Пишите любое название ящика, главное чтобы имя домена было прописано. Плюс ещё какие то несуществующие параметры появились — &fiarEmail=`emailsender`. Попробуйте так: [[!FormIt? &hooks=`spam,email,FormItAutoResponder,redirect` &emailTo=`olga@lingvo-lang.com` &emailSubject=`English! Английский по Skype` &emailFrom=`no-reply@lingvo-lang.com` &emailTpl=`ConfirmationTpl` &fiarFrom=`no-reply@lingvo-lang.com` &fiarSubject=`Спасибо за обращение!` &fiarFromName=`English! Английский по Skype` &fiarTpl=`autoResponseTpl` &validate=`name:required,email:email:required,phone:required,message:required` &validationErrorMessage=`В форме содержатся ошибки!` &successMessage=`Сообщение успешно отправлено` &redirectTo=`14` ]] Вопросы / Не работает FormItAutoResponder, как настроить? 2 0 1
Сергей Кепкин · 02 ноября 2017, 14:58 ну поискал бы тут на форуме!!! почему предлагаю это — я уже псыкал разжеванный ответ!!! еще раз, ок))): 1. создаешь сниппет под названием yaSuperProger <?php //умолчальная сортировка по убыванию id $DetectGetBy = 'id'; $DetectGetDir = 'desc'; //подсветка активного пункта $DetectGetHL = 'default'; $DetectGetText = 'сначала новинки'; if (!empty($_GET['sort'])) { if ($_GET["sort"] == "price_up") { //сортировка по возрастанию цены $DetectGetBy = 'Data.price'; $DetectGetDir = 'asc'; $DetectGetHL = 'price_up'; $DetectGetText = 'сначала подешевле'; } if ($_GET["sort"] == "price_down") { //сортировка по убыванию цены $DetectGetBy = 'Data.price'; $DetectGetDir = 'desc'; $DetectGetHL = 'price_down'; $DetectGetText = 'сначала подороже'; } } $modx->setPlaceholder('DetectGetBy', $DetectGetBy); $modx->setPlaceholder('DetectGetDir', $DetectGetDir); $modx->setPlaceholder('DetectGetHL', $DetectGetHL); $modx->setPlaceholder('DetectGetText', $DetectGetText);2. в шаблон страницы категории вставляешь вызов этого сниппета и чанк с кнопками, или упрощенно без чанка так: [[!yaSuperProger]] <div class="row box-filter"> <div class="col-sm-12"> <div class="btn-group"> <button type="button" class="btn btn-default dropdown-toggle sort" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> [[+DetectGetText]] <span class="caret"></span> </button> <ul class="dropdown-menu [[+DetectGetHL]]"> <li class="first"><a class="sort_default" href="[[~[[*id]]]]">сначала новинки</a></li> <li><a class="sort_price_up"href="[[~[[*id]]]]?sort=price_up">сначала подешевле</a></li> <li class="last"><a class="sort_price_down" href="[[~[[*id]]]]?sort=price_down">сначала подороже</a></li> </ul> </div> </div> </div> [[!pdoPage? &element=`msProducts` &limit=`12` &depth=`0` &sortby=`[[+DetectGetBy]]` &sortdir=`[[+DetectGetDir]]` &ajaxMode=`default` ]] Вопросы / Как сделать сортировку товаров по цене, названию? 20 0 3
Олег · 19 апреля 2017, 16:33 Я сделал такой компонент, но его нет в магазине. Могу поделиться, если понравится. Ответ осуществляется из админки. Вот ссылка (пример работы): yaguar-m.ru/vopros-i-otvet Вот так редактируется в админке: joxi.ru/p27Wz9DHovRa72 Вопросы / Реализация раздела "Вопрос - ответ" 34 +4 1
Leo · 16 декабря 2016, 13:38 рабочий вариант, проверено <?php define('MODX_API_MODE', true); require 'index.php'; // Если файл лежит не в корне - здесь нужно указать верный путь $modx->getService('error','error.modError'); $modx->setLogLevel(modX::LOG_LEVEL_INFO); $modx->setLogTarget(XPDO_CLI_MODE ? 'ECHO' : 'HTML'); if (!isset($parents)) {$parents = 0;} // Можно указать список категорий для поиска товаров if (!isset($resources)) {$resources = '';} // Можно указать конкретный список товаров $pdo = $modx->getService('pdoFetch'); $condition = array('parents' => $parents); $files = $pdo->getCollection('msProduct', array( 'msProduct.class_key' => 'msProduct', ), array( 'class' => 'msProduct', 'parents' => $parents, 'resources' => $resources, 'innerJoin' => array( 'msProductFile' => array( 'alias' => 'msProductFile', 'on' => array( 'msProduct.id = msProductFile.product_id', 'msProductFile.parent' => 0, 'msProductFile.type' => 'image', ) ) ), 'select' => array( 'msProductFile' => 'all' ), 'sortby' => 'msProduct.id' ) ); echo '<pre>'; echo $pdo->getTime(); foreach ($files as $row) { $file = $modx->newObject('msProductFile'); $file->fromArray($row, '', true, true); $children = $file->getMany('Children'); foreach ($children as $child) { $child->remove(); } $file->generateThumbnails(); // Обновляем thumb и image товара if ($product = $file->getOne('Product')) { $product->updateProductImage(); } } echo microtime(true) - $modx->startTime; Вопросы / Обновление всех превью товара MS2 42 0 3
Василий Наумкин · 12 мая 2016, 12:13 Just google the error — stackoverflow.com/a/8001581 Вопросы / minishop2 paypal checkout problem: Errorcode 10002 1 0 1
Илья · 08 сентября 2015, 22:16 Для nginx: if ($host = "www.example.com") { rewrite ^ $scheme://example.com$uri permanent; } location / { try_files $uri $uri/ @modx-rewrite; } Вопросы / .htaccess редирект на без www 11 0 1
Возможно ли реализовать возможность предоплаты за доставку на сайте? Так ради этого мне и нужно это все, чтобы клиент платил сразу при оформлении заказа, чтобы избавить себя от мусорных заявок (когда человек оставляет заявку, а предоплату делать не ...
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 18 px. Да и текст комментариев можно таким сделать. Для меня лично 16 — мелковато на больших экранах (в комментариях вообще 15 ...
MiniShop3 1.11.0 при клике на radio идет пересчет итоговой суммы в orderUI, в зависимости от способов(оплаты доставки) я так поняла. попробуй код запуска события поставить ниже чем orderUI, после
ImageOptimizer - WebP/AVIF и responsive <picture> для MODX 3 Дополнение доступно modstore.pro/packages/photos-and-files/imageoptimizer
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeV... Добавил localizator3_default_language
msInShopNotify Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3 Минимальные требования: PHP 8.4 MODX 3.2 MiniShop3
MaxNotify Обновление 1.2.0-pl (03.07.2026) — добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`; — добавлены уведомления о заявках SendIt через hook-...
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurre... Да, планируется. Даже чуть больше, чем просто бонусная система)
components/faq/model/faq/mysql/faqitem.map.inc.php
components/faq/model/bd_faq/mysql/bd_faqitem.map.inc.php
components/faq/model/schema/faq.mysql.schema.xml
тип на string и все заработало
В файле faq.mysql.schema.xml
phptype=«text» нет такого. Когда-то работало, а сейчас надо phptype=«string». Замените phptype=«text» на phptype=«string» везде в схеме и перегенируйте классы XPDO. Я с помощью migx это делаю. Создание таблиц через MIGX
Может для шаблона кому пригодится(копи/паст):
Этот плагин выкладывал Безумкин Василий, вот только не помню где.
Не забудьте поменять настройки плагина под ваши потребности. Там не только ватермарк накладывается но и ресайз изображения делается. Вы можете оставить только наложения ватермарка.
Попробуйте так:
еще раз, ок))):
1. создаешь сниппет под названием yaSuperProger
2. в шаблон страницы категории вставляешь вызов этого сниппета и чанк с кнопками, или упрощенно без чанка так:
Могу поделиться, если понравится.
Ответ осуществляется из админки.
Вот ссылка (пример работы): yaguar-m.ru/vopros-i-otvet
Вот так редактируется в админке:
joxi.ru/p27Wz9DHovRa72