Максим

Максим

Был в сети 05 августа 2018, 20:05
Заказы не принимаю
Видимо я неправильно понял вопрос. Что должно выводиться?
Если
<span class="product__labels">[[+new]] [[+popular]] [[+favorite]]</span></p>
то все в порядке, оно и должно выводить
<span class="product__labels">1 0 0</span>
А если нужно с иконками в зависимости от значения [[+new]] и т.п., то надо или пользоваться модификаторами или параметром prepareSnippet или использовать fenom.

А идея плохая, потому что чем меньше работает родной парсер, тем лучше (:
Может быть кому-то пригодится простенький сниппет для вызова mFilter2, который дописывает в параметр filters имена назначенных для категории опций — эти опции выводятся в фильтре чекбоксами:
<?php
$catid = $modx->resource->id;
$q = $modx->newQuery('msCategoryOption');
$q->select(array(
    'msCategoryOption.category_id',
    'msCategoryOption.option_id',
    'mso.key'
    ));
$q->where(array(
    'msCategoryOption.category_id' => $catid
    )
    );
$q->leftJoin('msOption','mso','msCategoryOption.option_id = mso.id');
$q->prepare();
$q->stmt->execute();
$options = $q->stmt->fetchAll(PDO::FETCH_ASSOC);
$_options = array();
foreach ($options as $option) {
    $_options[] = 'msoption|'.$option['key'];
}
$_options = implode(',',$_options);
$scriptProperties['filters'] = implode(',',array($scriptProperties['filters'],$_options));
return $modx->runSnippet('mFilter2',$scriptProperties);
Наверное минусуют, потому что не понятно в чем суть предложения. Предлагается администрировать, грубо говоря, серверы за 500 рублей с перспективой получить на этих серверах панель управления сайтами на MODX? Свой собственный modhost.pro то есть? (:
Я не имел в виду, что готовые компоненты, пусть даже в большом количестве — зло (: Просто хвалебные статьи и уроки сводятся к тому, как легко натянуть верстку, но при этом из вида упускается, что делать сайт — это не только скачивать компоненты, расставлять тэги в шаблоне и нарезать чанки. Я когда начинал, то практически не знал PHP и толком не понимал, как работает MODX, однако те куски кода, которые я находил, очень легко встраивались в MODX через сниппеты и работали, это радовало и появлялся стимул изучать больше (: Писал ли кто-нибудь об этом в контексте «мой первый опыт в MODX» — не припомню.
Просто кликаешь, добавляешь, вводишь и вуаля. Как LEGO собирать в режиме реального времени. Приятно.
Эта легкость на самом деле очень обманчива. Я не раз замечал, что новички испытывают, что ли, эйфорию, сделав первый сайт по каким-нибудь урокам. А потом возникают вопросы типа «нужно умножить 2 на 2, Василий, помоги» или конструкции "[[snippet? &param=`[[snippet &param=`[[snippet? &param=`[[snippet]]`]]` &param=`[[snippet]]`]]", а то и какие-то простыни из вложенных модификаторов. А как я часто переделываю или дорабатываю чужие сайты, так иногда просто руки опускаются от всего этого. Вроде и героем стали, и дракона победили, но только у победы какой-то странный запашок. Странно даже, что раньше периодически возникали темы «сделал сайт на Revo, тормозит, помогите», а сейчас что-то не видно.
Спасибо за такую быструю реализацию, действительно очень удобно стало писать мелкие сниппеты (: Вот еще одна идея — сделать запуск с параметрами: открывается окошко с текстовым полем в котором можно написать "&param=`value`" или даже "@parameters"; будет удобно возиться cо сниппетами из готовых компонентов (думаю, что уместно экранировать вывод результатов, чтобы была видна разметка).
До галереи тут еще далеко, хотя задача «1 видео на странице» тоже имеет место быть. Выскажу свои соображения как разработчик двух видеогалерей для Evo (:

Не совсем понятно, зачем использовать два класса, которые решают одну и ту же задачу. Разница только в том, что videoThumb не умеет получать название, описание и другие характеристики видео, но зато он будет работать без ключа. А Panorama, как я помню, не понимал ссылки типа youtu.be, если не исправили уже, конечно.

«Не трогать! Заполняется автоматически» — лучше было бы не заполнять автоматически там, где заполнили вручную. Даже в примере пользователь, скорее всего, захочет убрать ссылку из описания. Если же данные запрашиваются и перезаписываются каждый раз при сохранении страницы, то это не очень хорошо.

А ссылку на embed нет смысла вообще показывать в админке, она необходима только при выводе. Вообще не представляю ситуацию, в которой пользователю нужна возможность менять это поле.
и не совсем понятно, почему доп.параметры товара (размер, цвет) сделаны во время создания товара, а галерея и тд после
Потому что в галерее картинки привязаны к id ресурса, который известен только после сохранения.
Добавить в форму скрытый input name=«timestamp». Если менеджер открыл 2 вкладки, то будет два разных timestamp. Но у меня задача сохранять картинки в tv в папки типа assets/images/id.
С галереей такое делать нет никакой выгоды: создали документ — сохранили документ — залили картинки == создали документ — залили картинки — сохранили документ. Выигрыша по времени 0.