170 похожих чатов

Парни, нид хелп ... есть yml файл, в него

выгружаются товары и нужно цену умножить на 1.1

как это сделать грамотно?

вывод осуществляет Doclister

///////////////////////////////////////
<?php
// Параметры для DocLister
$params = array(
'display' => 10000,
'depth' => '4',
'tpl' => 'ymlGoodsTpl-copy',
'tvList' => 'image,price,old_price,availability,isnew,quantity,preorder,qty_rumyancevo,qty_trcnora,qty_vegas,length_pack,width_pack,height_pack,weight_pack',
'id' => 'list_g',
'parents' => '7,8,9,10',
'orderBy' => 'menuindex ASC',
'prepare' => 'prepareGoodsYML',
'addWhereList' => 'c.parent NOT IN(5523,5536,5543)',
);

$f[] = 'tv:quantity:egt:0';

if ($f) {
$params['filter_delimiter'] = '||';
$params['filters'] .= 'AND(' . implode("; ", $f) . ')';
}

$out = $modx->runSnippet("DocLister", $params);

return $out;
/////////////////////////////////////

и шаблон вывода карточки
/////////////////////////////////////
<offer id="[+id+]" available="true">
<url>[(site_url)][~[+id+]~]</url>
<price>[+tv.price+]</price>
<currencyId>RUR</currencyId>
<categoryId>[+parent+]</categoryId>
<picture>[+tv.image+]</picture>
<name>[+pagetitle+]</name>
<description>
[+content+]
</description>
<delivery>true</delivery>
</offer>
/////////////////////////////////////


нашел в старой ветке https://modx.evo.im/blog/addons/5779.html такой вариант, но не врублюсь куда его воткнуть

$data['tv.price'] = $data['tv.price'] * 2;

12 ответов

47 просмотров

Советую ознакомиться: DocLister

Доброго и Вам. А что будет, коли в шаблоне вывода сделать так? [+tv.price+] * 2

Yury-K. Автор вопроса
Am Ambrion
Доброго и Вам. А что будет, коли в шаблоне вывода ...

я об этом сразу подумал, но откинул как слишком простой вариант 😁 вернусь к компу через час - проверю и отпишу но я думал, что он выведет что то в духе 79900*2 вместо того, чтобы перемножить

Только (возможно) не стоит перезаписывать значение $data['tv.price'], если оно где-то еще используется в выводе. Мало ли там, старая цена/новая цена, я детально не смотрел ваш пример. В общем, если $data['tv.price'] больше нигде не юзается - можно перезаписать, а иначе в препаре лучше так: $data['priceYML'] = $data['tv.price'] * 2 а в DocLister-шаблоне будет так <price>[+priceYML+]</price>

Yury-K. Автор вопроса
Андрей [aharito] Харитонов
Да, так не выйдет.

спасибо, я понял, щас буду пробовать, если что -- вернусь с глупыми вопросами )

Yury K.
спасибо, я понял, щас буду пробовать, если что -- ...

Вопросов, не бывает глупых, если они по делу )) бывают плохо заданные вопросы, типа "а почему у меня не получается" - и всё, больше инфы ноль 😁 А вы отлично написали вопрос, не поленились всю инфу дать, поэтому и ответить несложно.

Yury-K. Автор вопроса
Андрей [aharito] Харитонов
Только (возможно) не стоит перезаписывать значение...

правильно ли я понял, что "препара" — вот этот РНР код <?php // Параметры для DocLister $params = array( 'display' => 10000, 'depth' => '4', 'tpl' => 'ymlGoodsTpl-copy' ........... и т.д. ......

Yury-K. Автор вопроса
Am Ambrion
Доброго и Вам. А что будет, коли в шаблоне вывода ...

ну да )) как я и думал .. если так сделать то вывод будет <price>71990*2</price>

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта