iWatchYouFromAfar
так что такое * ?
iWatchYouFromAfar
мне уже самому интересно
Евгений
iWatchYouFromAfar
снижинка
я уже отвечал - неверно
iWatchYouFromAfar
умножение тоже не подходит
Павел
Ну не может она пока ответить, шо поделать)
Евгений
астерикс
Павел
дай ей подсказку
Не хочу В гугле можно найти шо это такое
Евгений
никакого уважения к даме (?)
Павел
о, тут хорошо описано
iWatchYouFromAfar
где?
Павел
верни
iWatchYouFromAfar
тебе показалось
Павел
дай ей почитать
iWatchYouFromAfar
мля это копипаста из доки
iWatchYouFromAfar
пусть гуглирует
iWatchYouFromAfar
ну, почти копипаста
Павел
@Katsiaryna99 Окей Давай так Если ты * получаешь обращаясь к пространству resource И мы знаем, что после точки в PHP все является полями, то что такое *, если id ты получаешь используя как раз точку? ($_modx->resource.id)
Павел
Ну я не знаю как еще доступнее
Павел
я с феном еще не работала, сча
Не, тут не важно феном или нет Это во всем PHP так
Katerina
там в чанке все доступно через $
Павел
Ответ на вопрос что такое * есть в моем же вопросе, прочитай его внимательно
Павел
там в чанке все доступно через $
Сделаю вид, что я это не видел
Katerina
{$pagetitle}
Павел
{$pagetitle}
окей, pagetitle относительно ресурса - что ?
Павел
Вот есть прям жесткое определение этому
iWatchYouFromAfar
Павел
название ресурса
Это понятно. Но название ресурса, это что?
Павел
Начинается на букву «п»
Katerina
Начинается на букву «п»
ты про плейсхолдер? тогда почему $pagetitle работает а $id нет
Павел
ты про плейсхолдер? тогда почему $pagetitle работает а $id нет
Нет ,есть еще одно определение на букву «п»
Павел
4 буквы в нем всего
iWatchYouFromAfar
4 буквы в нем всего
вторая буква о
Katerina
поле ты имел ввиду?
iWatchYouFromAfar
СЛОВО СЛОВО СЛОВО
Katerina
там в чанке есть такое
Katerina
<a class="products_title" href="{$id | url}" class="font-weight-bold">{$pagetitle}</a>
Павел
поле ты имел ввиду?
да, клево! Поля в fenom выводятся через $<имя_поля>
Павел
А как выводятся плейсхолдеры?
Katerina
значит в $id уже есть id ресурса
Павел
значит в $id уже есть id ресурса
Не буду тебя грузить почему именно так, найди ответ на вопрос - как вызвать placeholder в modx revo?
Павел
Они в сниппетах и в феноме вызываются прям идентично
Katerina
price же заходит
Katerina
{$_modx->runSnippet('ue', ['price' => $price], ['id' => $num])}
Павел
price же заходит
Найдя ответ на мой вопрос, ты получишь ответ считай сама Ответь на него :)
Katerina
Найдя ответ на мой вопрос, ты получишь ответ считай сама Ответь на него :)
{$_modx->runSnippet('ue', ['price' => $price, 'id' => $num])}
Katerina
так тоже не работает
Павел
{$_modx->runSnippet('ue', ['price' => $price, 'id' => $num])}
Не, ты сниппет вызываешь Твоя задача найти ответ на вопрос «как получить значение плейсхолдера»
Миша
Katerina
Не, ты сниппет вызываешь Твоя задача найти ответ на вопрос «как получить значение плейсхолдера»
подожди, если в чанке работает $id значит эта переменная уже содержит id ресурса
Василий
Строго говоря, плейсхолдеры не получают. Следуя из названия, они занимают какое-то место, чтобы при рендере их заместили реальные значения Парсер MODX собирает их со страницы и меняет на значение, если есть. Если нет - просто убирает на 10й попытке
Павел
подожди, если в чанке работает $id значит эта переменная уже содержит id ресурса
Потому что ты общаешься к полю. Но тебе нужно к плейсхолдеру.
Василий
При этом вся разница между * и + в том, что данные для замещения берутся из разных мест Или из массива modX::placeholders (или отдельного массива для рендера чанка, я уже не уверен сейчас) или из текущего ресурса
Василий
А вот у Fenom всё куда ближе к PHP. Там не плейсхолдеры - там переменные, которые прям $var. И для работы они должны быть переданы в текущую область видимости сниппетом
Василий
При этом переменные там - это всегда переданные данные. А вот чтобы достать что-то из текущего рерсурса, нужно обратиться к {$_modx->resource[имя_поля]}
Василий
То есть, гораздо более явное поведение
Василий
Нет, вызов сниппета - это не получение плейсхолдера И как я уже говорил, плейсхолдер вообще не получает - его меняет парсер на значение, если есть на что менять. Плейсхолдер тупо стоит и ждёт, он ничего не вызывает
Павел
{$_modx->runSnippet('ue', ['price' => $price, 'id' => $num])} Почему $num в сниппете не получает id?
потому что $num не является полем ? 🙂 Возможно, является плейсхолдером
Василий
Это же просто проверяется: {$num | var_dump} {$price | var_dump}
Василий
и смотрим вывод на странице - есть что-то в переменной, или нет
Евгений
{$_modx->getPlaceholders()}
Katerina
наоборот тоже не работает
Павел
{$_modx->getPlaceholders()}
ля, ты снова
Katerina
у меня сразу ошибка 500 тут var dump не поможет
Василий
Евгений
ля, ты снова
да ты так объясняешь что нихера не понятно
Василий
у меня сразу ошибка 500 тут var dump не поможет
убери всё лишнее из чанка и проверяй
Василий
Павел
да нет в fenom плеёхолдеров, там переменные, как в PHP
я разве сказал что-то, что отрицает это?)
Василий
Как видно, в tpl.msProducts.row просто нет $num
Katerina
Как видно, в tpl.msProducts.row просто нет $num
{$_modx->runSnippet('ue', ['price' => $price, 'num' => $id])}
Евгений
@iWatchYouFromAfar как думаешь, что наступит первым "modx говно" или "у меня получилось"