Серый · 18 июля 2018, 15:34 Вай-бай-бай, какая же красотища у нас с вами получилась, уважаемые коллеги! :-D Код использовал уот такой: <?php return $modx->runSnippet('getImageList', array( 'docid' => $scriptProperties['row']['id'], 'tvname' => 'stockList_MIGX', 'tpl' => '@CODE:<div style="background-image: url(/[[+image]]);background-position: top center;background-size: cover;background-repeat: no-repeat;width:50%;float:left;padding-bottom:50%;border:1px solid #fff;box-sizing: border-box;"></div>', 'limit'=> 4 )); Категорически огромное вам человеческое спасибо! Вопросы / Как вывести изображения из MIGX ресурсов в таблице Collections? 16 +1 2
Баха Волков · 18 июля 2018, 09:27 <?php $obj = json_decode($value); return '/stock-photo/' . $scriptProperties['row']['id'] . '/' . $obj[0]->image; Вопросы / Как вывести изображения из MIGX ресурсов в таблице Collections? 16 +1 1
Роман Ильин · 12 сентября 2017, 23:09 Сниппет для удаления старых версий: <?php /** * versionCleanX * * @author Scott Pronych, September 27, 2013 * * DESCRIPTION * * For use with VersionX to delete old content * * PROPERTIES: * * &contentType - can be resource, chunk, plugin, snippet, template, or templatevar * &maxVersions - integer value for max number of versions you would like to keep * * USAGE: * * [[!versionCleanX? &contentType=`resource` &maxVersions=`10`]] * */ $cx_type = $modx->getOption('contentType', $scriptProperties, 'resource'); $cx_max = (int) $modx->getOption('maxVersions', $scriptProperties, 5); $GLOBALS['count'] = 1; $GLOBALS['total'] = 0; $GLOBALS['deleted'] = 0; $GLOBALS['page_total'] = 0; $GLOBALS['page_deleted'] = 0; $GLOBALS['page_name'] = ''; $GLOBALS['prev_content_id'] = 0; $GLOBALS['prev_version_id'] = 0; switch ($cx_type) { case 'chunk': $name = 'name'; break; case 'plugin': $name = 'name'; break; case 'snippet': $name = 'name'; break; case 'template': $name = 'templatename'; break; case 'templatevar': $name = 'name'; break; default: $name = 'title'; $cx_type = 'resource'; } $GLOBALS['db_name'] = 'modx_versionx_' . $cx_type; function delete_row ($id) { global $modx; $query = "DELETE FROM `" . $GLOBALS['db_name'] . "` WHERE version_id = '" . $id . "'"; $result = $modx->query($query); if (!is_object($result)) return false; else { $GLOBALS['deleted']++; $GLOBALS['page_deleted']++; $GLOBALS['page_total']++; $GLOBALS['total']++; $GLOBALS['count']++; return true; } } function log_row () { $GLOBALS['data'] .= '<tr><td>' . $GLOBALS['page_name'] . '</td><td>' . $GLOBALS['page_total'] . '</td><td>' . $GLOBALS['page_deleted'] . "</td></tr>\n"; $GLOBALS['page_deleted'] = 0; $GLOBALS['page_total'] = 1; $GLOBALS['count'] = 1; } $query = "SELECT version_id, content_id, " . $name . " AS page_title FROM `" . $GLOBALS['db_name'] . "` ORDER BY content_id ASC, version_id DESC"; $GLOBALS['data'] = ''; $output = 'An error occurred: '; $versionx = $modx->query($query); if (!is_object($versionx)) { return $output . 'query error ' . print_r($modx->errorInfo(), true); } else { while($row = $versionx->fetch(PDO::FETCH_ASSOC)) { // New content_id so reset if ($prev_content_id == 0) { $prev_content_id = $row['content_id']; $prev_version_id = $row['version_id']; $GLOBALS['total']++; $GLOBALS['page_total']++; $GLOBALS['count']++; $GLOBALS['page_name'] = $row['page_title']; } elseif ($prev_content_id != $row['content_id']) { if ($GLOBALS['count'] > $cx_max) { if (!delete_row($prev_version_id)) return $output . 'deleting row for ' . $GLOBALS['page_name'] . ' Row: ' . $prev_content_id . ' ' . print_r($modx->errorInfo(), true); $GLOBALS['page_total']--; } else { $GLOBALS['total']++; $GLOBALS['count']++; } log_row(); $prev_content_id = $row['content_id']; $prev_version_id = $row['version_id']; $GLOBALS['page_name'] = $row['page_title']; } // Content count is over the max so delete previous row elseif ($GLOBALS['count'] > $cx_max) { delete_row($prev_version_id); $prev_content_id = $row['content_id']; $prev_version_id = $row['version_id']; } else { $GLOBALS['count']++; $GLOBALS['page_total']++; $GLOBALS['total']++; $prev_content_id = $row['content_id']; $prev_version_id = $row['version_id']; } } log_row(); if ($GLOBALS['data'] != '') { $output = '<h3>VersionX Cleanup for ' . $GLOBALS['db_name'] . '</h3> <p>Total records: <strong>' . $GLOBALS['total'] . '</strong> Total deleted: <strong>' . $GLOBALS['deleted'] . '</strong></p> <table class="table table-striped"> <thead> <tr> <th>Page name</th> <th>Total found</th> <th>Deleted</th> </tr> </thead> <tbody> ' . $GLOBALS['data'] . '</tbody></table> '; } else $output = 'Error: no data found.'; } $query = "OPTIMIZE TABLE `" . $GLOBALS['db_name'] . "`"; $versionx = $modx->query($query); if (!is_object($versionx)) { $output = 'Optimize error ' . print_r($modx->errorInfo(), true) . $output; } return $output; Вызывать так: [[!versionCleanX? &contentType=`resource` &maxVersions=`10`]] Вопросы / VersionX переполнил базу данных 8 +2 13
Наумов Алексей · 05 октября 2016, 20:02 Посмотрите в сторону modx.com/extras/package/taxonomies github.com/craftsmancoding/taxonomies но у компонента были явные проблемы с русским языком, я допиливал на месте. он позволяет сделать теги — документы MODx, а с ними pdoMenu работать умеет. Вопросы / Блог. Меню из тегов (меток) 4 0 1
Владимир · 28 сентября 2016, 01:34 Проблема решилась! Оказывается дело было в TypoMCE (TinyMCE). Помогло решение отсюда: forums.modx.com/thread/100583/upgrade-to-2-5-1-white-screens-when-editing-resources#dis-post-543548 А всего-то и надо было, что одну строчку из typomce.class.php закомментировать. Вопросы / Ошибка 500 при создании/редактировании ресурса 2 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... Да, планируется. Даже чуть больше, чем просто бонусная система)
Код использовал уот такой:
Категорически огромное вам человеческое спасибо!
Вызывать так:
modx.com/extras/package/taxonomies
github.com/craftsmancoding/taxonomies
но у компонента были явные проблемы с русским языком, я допиливал на месте.
он позволяет сделать теги — документы MODx, а с ними pdoMenu работать умеет.
forums.modx.com/thread/100583/upgrade-to-2-5-1-white-screens-when-editing-resources#dis-post-543548
А всего-то и надо было, что одну строчку из typomce.class.php закомментировать.