Всего 125 952 комментария

ariadnadesign
15 июня 2022, 11:37
0
Здравствуйте.
1.На сайте с cloudflare — не подтягиваются изображения. При отключении от cloudflare — все ок.
Есть ли рекомендации при работе с cloudflare?
2.Возможно ли импортировать не опубликованные ресурсы?
Заранее благодарю!
Елизавета
15 июня 2022, 11:28
0
Прозвучало как приговор)
@CHUNK в параметрах TV просто отдает строку. Т.е. если я в чанке вызываю сниппет [[!snippet]], то в результате текстом [[!snippet]], но не результат выполнения.
Алексей Смирнов
15 июня 2022, 11:07
0
о, как. мультиязык на MODX 3? смело.
Посмотрите в сторону @ CHUNK
ну и еще есть вариант файл, но файл нужно сгененрировать заранее:
docs.modx.org/current/ru/building-sites/elements/template-variables/bindings
Елизавета
15 июня 2022, 10:56
0
А если нужно учитывать context_key в запросе? Для разных языков нужно брать ресурсы из соответствующего контекста. В таблице site_content есть столбец context_key.
Алексей
15 июня 2022, 10:52
0
Вот
Array ( [0] => data-tags="offices" [1] => data-tags="kitchens" )
Алексей Смирнов
15 июня 2022, 10:40
0
Если у категорий есть свой (а он по идее должен быть) шаблон, то можно попробовать через SELECT:
@SELECT `pagetitle`,`id` FROM `[[+PREFIX]]site_content` WHERE `published` = 1 AND `deleted` = 0 AND `template` = 15 ORDER BY pagetitle ASC;
Алексей
15 июня 2022, 10:16
0
Да. Я пробовал вот так
{set $rows = 20 | resource : 'group' | fromJSON}
{foreach $rows as $row}
<li {$row.group | join | replace:",":" "}>
    <div class="uk-card uk-card-default uk-card-body">Item</div>
</li>
{/foreach}
Опять выводиться только первое значение
Николай Савин
15 июня 2022, 09:18
0
Нормально вы бахнули, версий 20 вверх )
Дмитрий
15 июня 2022, 09:12
+1
Тоже столкнулся с такой проблемой, вчера обновил minishop с 2.5.0 до 3.0.4 и перестали данные записываться в таблицу `ms2_order_addresses`, мне помогло поменять тип связи 'composites' на 'aggregate' и 'owner' c 'local' на 'foreign' в minishop2.mysql.schema.xml:
<object class="msOrder" ....>
<aggregate alias="Address" class="msOrderAddress" local="address" foreign="id" cardinality="one"
                   owner="foreign"/>
и в msOrder.map.inc.php:
Перенести из composites в aggreagtes:
'Address' = (...., 'owner' => 'foreign')
Николай Савин
15 июня 2022, 08:51
+2
Здравствуйте. Проблему зафиксировал. Будем решать
Александр Мельник
15 июня 2022, 07:11
+2
Можно я поразмышляю вслух? Это не вопрос к автору поста и речь не о конкретно minishop, а просто так — подискутировать с утра.
Что заставляет нас устанавливать обновления?
Мифическая вера в то, что каждая свежая версия программного обеспечения «лучше» предыдущей?
Но так ли это на самом деле? Справедливо ли это для любого программного обеспечения? Как оценить плюсы и минусы обновления? Что правильнее?
1) каждый раз все обновлять и тем самым сильно увеличивать риск возникновения сбоев в своем продукте (ведь по сути если наш код зависит от чьих-то сторонних компонентов, то мы обязаны просто «верить», что разработчик выпуская новую версию исправил в ней больше багов чем добавил).
2) Или же единожды собрав стабильную систему (пусть и из сторонних компонентов) и тестами и временем убедившись, что именно эти версии компонентов хорошо работают в связке друг с другом, оставить систему в таком стабильном состоянии и ничего не обновлять? Ведь «лучшее это враг хорошего», как говорит народная мудрость и попытке улучшить то что и так работает хорошо, скорее всего приведет к тому, что все станет работать плохо.

А теперь просто о моем личном опыте, хотя это совершенно не показатель что такой подход правильный.
Начну с операционной системы. Я на всех своих устройствах пользуюсь линуксом на базе debian. Это и сервера и мои копмьютеры. Эти дистрибутивы разрабатываются очень крутой компанией canonical, новые версии выходят каждые 6 месяцев. И даже при условии, что разработкой занимаются профи, есди скачать релиз в день его выхода — он будет полон глюков. У людей 6 месяцев на доработку и тесты, люди профи и все равно в релизе много багов. Только через пару месяцев его уже можно скачать и кайфовать.
Если говорить про modx. Из многих десятков сайтов, которые у нас есть, 80 процентов работает на modx 2.65 и прекрасно выполняет свои функции. Да, разрабатывая новый сайт, я беру самые последние версии компонентов. Но сделав один раз продукт, который показывает свою стабильность и полностью устраивает и меня и заказчика — я не вижу смысла что то в нем менять. Каждый раз, когда я пытаюсь что то обновить, возникают те или иные проблемы. И хорошо если этот баг сразу виден, например сайт полностью упал, но куда страшнее баги, которые не столь очевидны и вылазят спустя месяц после обновления. Да, я даже соглашусь, что такие баги при обновлении скорее всего говорят о моем невысоком уровне знаний (хотя исходники компонентов я никогда не правлю), но факт остается фактом, чем меньше я обновляю — тем стабильнее наши проекты. Такой вот парадокс.
Елизавета
15 июня 2022, 07:09
0
В modx 3 выпилили @EVAL. Как теперь можно запустить конструкцию
@EVAL $output = $modx->runSnippet('snippet');return '' . $output;
?
Артур Шевченко
15 июня 2022, 01:47
0
Проблема есть, но ХЗ как её решить.
Shedko Denis
14 июня 2022, 22:15
0


marketplace.datastrg.ру

Не отдает ничего, нет даже 200 ответа по этим ссылкам, надо с ним разбираться. Может запрещен hot-linking.
Тогда phumb в помощь, на некоторых хостингах сам скачает рисунок и к себе положит.
nikolrazumov
14 июня 2022, 21:01
0
У меня Firefox картинки не отображаются.
vectorserver
14 июня 2022, 12:44
0
Вместо "MIGX_TV" укажи свой TV.
<?php
if ($_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest' || empty($_REQUEST['action'])) {exit();}

$action = $_REQUEST['action'];

/* @global $modx*/
define('MODX_API_MODE', true);
require_once dirname(dirname(__FILE__)).'/index.php';
$modx->getService('error','error.modError');
$modx->setLogLevel(modX::LOG_LEVEL_FATAL);

$output = array();

switch ($action) {
    case 'getContent':
        $id = isset($_POST['id']) ? (int) $_POST['id'] : 0;
        if (empty($id)) {
            exit();
        };
        $object = $modx->getObject('modResource',$id);
        $output['content'] = $object->get('content');
        $output['pagetitle'] = $object->get('pagetitle');

        $output['MIGX_TV'] = json_encode($object->getTVValue('MIGX_TV'),true);

        $output = json_encode($output);
        break;
    default:
        $output = array("st"=>"error");
}

header('Content-Type: application/json; charset=utf-8');
echo json_encode($output);
Илья Уткин
14 июня 2022, 11:13
+1
Создать накладную автоматически может, трек-номер в письме отправить нельзя, но CDEK сам отправляет пользователю уведомление — «Для вас создана новая посылка». И дальше все уведомления CDEK так же отправляет.

Данные клиента нельзя «украсть» — они передаются только в API CDEK-а
Алексей
14 июня 2022, 10:15
0
Илья, привет. Ответьте пожалуйста на три вопроса по компоненту CDEKIntegrate.
Компонент может сам автоматически для оплаченного заказа создать накладную.

А потом компонент автоматически отправит трек-номер в стандартном MS2 емайле клиенту tpl.msEmail.sent.user (Cтатус «Заказ отправлен»)?

А потом компонент еще раз отправит трек-номер в емайле tpl.msEmail.sent.user2 со статусом «готово к выдаче»?

А данные клиента при этом невозможно «украсть»? Насколько безопасна передача личных данных. Понятно что супер спец всё может украсть. Но надо чтобы не все подряд смогли личные данные увидеть.