Іван Клімчук
С нами с 16 декабря 2012; Место в рейтинге пользователей: #649 минут назад
Слишком общий вопрос, нет волшебных решений.
Что значит у нас много опций, 20 штук? Как вы по ним хотите похожие товары искать?
Вот я к примеру ...
Как вывести похожие товары по списку опций? 3
1 час назад
Всем привет! Подскажите пожалуйста а можно ли сделать фильтр в 2 уровня и как это сделать? Т.е. например мне нужно сделать: домен/бренд-из-сео-фильтра...
Анонс SeoFilter - ЧПУ+SEO для mFilter2 и не только 120
Вчера в 15:27
Есть у кого-то идеи? или в данном случае через плагин и событие пробовать, или мсинк тупо всё обрезает?
Msync как записать html контент, а не обработанный без тегов? 1
Вчера в 12:15
воротите, что хотите. Вплоть до удаления исходников сайта, это уже на ваше усмотрение.
Это определённо очень важная возможность 😊
mmxFenom - нативная интеграция шаблонизатора 3
Вчера в 11:30
Управляя настройками mysql, можно задать параметр sql_mode пустым значением (после чего все заработает), но хостер такую возможность не дает… Есть ли ...
pdoTools и sql_mode=only_full_group_by - ошибки при работе PdoPage 1
Вчера в 10:27
<?php
$id = $modx->getOption('id', $scriptProperties, $modx->resource->id);
$field = $modx->getOption('field', $scriptProperties);
$tpl...
Вывод даты msTimeStamp полей MiniShop2: new, favorite, popular... 3
01 мая 2024, 21:40
$pdoTools = $modx->getParser()->pdoTools;
$data['count_products'] = count($data['products']);
$renderedHtml = $pdoTools->get...
Как передать переменные внутрь чанка из сниппета и заполнить с помощью fenom? 2
30 апреля 2024, 11:46
— эта заготовка для создания ОДНОГО дополнения? Да
Или можно в рамках одного сайта разработать сразу 5 несвязанных друг с другом дополнений?Наверно...
mmxApp - разработка новых composer дополнений 6
Если подходить серьезно, то аукционы серьезная тема (есть некоторый опыт) и костылем поверх ms2 ее наверное можно решить, но в качестве я бы засомневался.
или
Если в деталях, то он шлет редиректы только на коды 30x.
Хватит искать готового. Скоро вообще у всех мозги поотсыхают, никто делать ничего не хочет. Tickets из коробки (ничего там особо и настраивать не нужно) работает как новости +рубрики + комменты (на этом сайте примеры вокруг). Если вам лень почитать документацию и разобраться, как это работает, то это ваши проблемы, имхо. Волшебной кнопки «Сделать п***то» не бывает.
В остальном деплой MODX — БОЛЬ. Код в базе сподвигает на велосипеды и костыли. Я люблю MODX, но эта мелочь многое портит (ложка дегтя так сказать).
В идеале видится схема такая.
Рабочие копии (у программистов) разворачиваются через Gitify. Код туда-сюда гоняется легко, есть в последних версиях разрешение конфликтов ID (когда 2 разработчика создали разные чанки с одним id например) и умное удаление «мусора» (удалил файл и следом удалилась запись из БД на сайте). На stage тоже код попадает через gitify. Со stage код должен упаковываться в транспортный пакет и устанавливаться на продакшен. Тут поможет Teleport. Но в таком случае доступ на продакшен для всех через админку закрыт. Изменения должны вноситься заказчико на stage, а затем попадать на продакшен. Такой подход касательно Teleport одобрил Jason Coward, когда в общем чате в Slack это обсуждалось (Teleport его рук творение).
У подхода есть плюсы: продакшен изолирован от вмешательства человека, живет как отдельное приложение (данные, генерируемые пользователями не относятся к разработке и не нужны на dev-машинах, заменяются фикстурами).
И минусы: настраивать такое для рядовых проектов накладно, требует много ресурсов для поддержки, в свое очередь не выгодно для коротких или малых проектов.
Но если делается совсем большой проект, то стоит задуматься, а нужен ли MODX? Каким бы фанатом и евангелистом я не был, реальность сурова: MODX дорог в эксплуатации на очень крупных проектах, хотя и позволяет экономить на старте.
1 'outerTpl' — ключ параметра
2 $outerTpl — тут не правильно, второй параметр — это источник, откуда брать значение. Нужно $scriptProperties. Так как у сниппета могут быть заданы свои параметры (на вкладке с параметрами), то там может быть и задано значение по умолчанию. В таком случае не нужно будет писать третий параметр.
3 — '
[[+wrapper]]
' — значение по умолчанию. Если во 2 параметре значения с таким ключом (1) нет, то взять это значение.В данном случае данные о температур приходят в виде числа, если отрицательное, то с минусов, если положительное, без плюса. Нулю плюс приписывать не нужно, поэтому для числе меньше либо равно 0 — оставляем как есть, если больше 0, ставим плюс. Не принципиально, но мне так легче в коде читать.
Да, стоит внести в условие. Исправил.
gist.github.com/Alroniks/e6ba41e16dbaeb780cdc
В вашем сниппете много ошибок. Изучите мой код (он тоже не совершенен), если будет совсем непонятно, могу вам в частном порядке рассказать, что не так.
Механика проста:
1. Проверяем, если ли значение к кеше.
2. Если нет, делаем запрос на сервер и сохраняем полученное значение к кеш
3. Выводим значение из кеша
У меня ошибка была из-за неправильного адреса, PHPMailer не мог туда отправить письмо и стопорил очередь.