Всего 123 799 комментариев

weranda
06 апреля 2023, 07:54
0
Спасибо, это частично решает вопрос.
Константин Ильин
06 апреля 2023, 05:58
0
Залоггируйте каждый if используя
$this->modx->log(1, print_r('переменная или строка/этап',1))
Чтобы посмотреть куда заходит код и что он получает

//Например этот участок кода

if ($this->config['json_response']) {
    /** Вот мои изменения ниже */
    $success_page = $this->modx->getOption('ms2_order_success_page');
    $this->modx->log(1, print_r($success_page,1))
    if(is_numeric($success_page)) {
        if ($this->modx->getCount('modResource', array('id'=>$success_page,'published' => true,'deleted' => false))) {
            $this->modx->log(1, print_r('1-1',1))
            $url = $this->modx->context->makeUrl($success_page);
            return $this->success('', array('redirect' => $url.'?msorder='.$order->get('id')));
	}
    }
    $this->modx->log(1, print_r('1-2',1))
    return $this->success('', ['msorder' => $msOrder->get('id')]);
}
$this->modx->log(1, print_r('2-1',1))
$redirect = $this->modx->context->makeUrl(
    $this->modx->resource->id,
    ['msorder' => $msOrder->get('id')]
);
$this->modx->log(1, print_r('2-2'.$redirect,1))
$this->modx->sendRedirect($redirect);
А так у меня недавно была проблема с редиректом, но пока отложилась эта проблема, может что-то поменялось в обновлениях нынче раз не у меня одного проблема появилась.
steve.kon
05 апреля 2023, 23:07
0
Нет, всё остальное стандартно
Артур Шевченко
05 апреля 2023, 20:38
0
Вот же у тебя условие написано по которому твой код должен отрабатывать
if ($this->config['json_response']) {}
По умолчанию оно false, ты где-то меняешь параметр json_response?
Артур Шевченко
05 апреля 2023, 20:26
0
Все сниппеты семейства pdoTools и MiniShop2 позволяют указав пустой шаблон получить распечатанный массив, где ключами будут доступные плейсхолдеры. Вероятно некоторые другие компоненты практикуют такой же подход. В иных случаях надо смотреть код сниппета и выводить в консоль данные.
Денис Усманов
05 апреля 2023, 13:49
0
В выводе товаров везде кроме поиска добавить условие на поле stock (смотря какое у Вас используется):
&where=`{"Data.stock:!=":"0"}`
Если же остатки в TV поле, то добавить поле в выборку и условие:
&includeTVs=`tvname`
&where=`{"tvname:!=":"0"}`
Vladimir
05 апреля 2023, 13:34
0
При полной настройки должно работать, без самого кода, и настроек, из чата не помочь, если что можете стучаться @invictusmaneobart
Алексей Смирнов
05 апреля 2023, 13:09
0
Заинтересует любого кому приглянулся handyShop по функционалу и дизайну. Люди в любом случае сэкономят деньги и время на старте. Это же очевидные вещи.
Я никого не принуждаю, а просто показываю и даю альтернативу в готовых решениях для MODX Revolution.
Холиварить по поводу выбора платформ CMS — вообще не тема топика и вы лучше меня знаете, а то и Максим недавно подсказал.
Поэтому выбор платформы, в полне, может стоять и на первом месте, а уж с нуля или взять готовое — на втором. Или наоборот, что тоже нормально.
А функционал развивается, стабильно работает. В любой системе есть что допиливать — очевидно. Каждый выбирает сам.
Надеюсь я ответил на все ваши вопросы.
Петр
05 апреля 2023, 09:42
0
Столкнулся с проблемой, не работает пагинация на других языковых версиях сайта, на базовой версии работает. использую [[!pdoPage]]. При переходе на стр 2, стр 3 и т.д. идет редирект обратно на стартовую страницу.
Где копать?
Александр Мельник
05 апреля 2023, 08:27
-1
я так понимаю по скриншоту, раз время менеджер может задать сам, то скорее всего скрипт по cron необходимо запускать каждую минуту. Иначе скрипт может пропустить какую-то из задач.
А этот скрипт явно получает и обрабатывае все заказы магазина. Не возникнет проблем у магазинов с большим количеством заказов? Ну скажем если у магазина 100 000 закзаов собралось за 5 лет.
Успеет обработать за минуту такое количество? Не возникнет рекурсии изза того что один скрипт запустился и еще работает, а уже прошла минута и запустился другой?
Александр Туниеков
05 апреля 2023, 03:05
+1
Привет. Вопрос не до конца понял, но может так: вносятся данные в виде текста и селект нужен только в фильтре.
Тогда примерно так:
{'!getTable' | snippet : [
   'loadModels'=>'gtsShop',
   'showLog'=>1,
   'selects'=>[
      'test'=>[
         'type'=>'data',
         'rows'=>[
            ['test','test'],
            ['Oplata','Oplata']
         ]
      ]
   ],
   'table'=>[
        'class'=>'gsRaschet',
        'pdoTools'=>[
            'class'=>'gsRaschet',
        ],
        'autosave'=>1,
        'row'=>[
            'id'=>['filter'=>1],
            'name'=>[
                'edit'=>['type'=>'text'],
                'filter'=>[
                    'edit'=>['type'=>'select','select'=>'test']
                ]
            ],
        ]
    ]
]}
Артур Шевченко
04 апреля 2023, 21:39
0
Я думаю, что письмо с напоминанием об оплате приходит если выбрана оплата онлайн и заказ не оплачен.
Александр Мельник
04 апреля 2023, 20:34
-2
Прочел первый раздел «Повышение конверсии заказов в оплату» и честно говоря не понял о каком же письме идет речь.
В первом предложении вы пишите
за счёт автоматической отправки письма с напоминанием об оплате
во втором —
письмо с подтверждением наличия товара
Так какое письмо приходит? Говорящее о том что товар в наличии или требующее оплатить?
Хотя оба письма лично мне кажутся странными.
Если я приобрел товар на сайте, то это уже значит, что товар в наличии.
Если я через 5 минут вдруг получу письмо с информацией, что товар в наличии я посчитаю, что с сайтом что то не так.
А если я получаю через 5 минут письмо с напоминанием, что нужно оплатить это тоже вызывает отторжение. Я только сделал заказ, а мне уже напоминают, что пора и деньги заносить, а то ты уже целых пять минут как не платишь)
И как быть в случае если я покупатель выбрал способ оплаты — оплачу при получении или оплачу по счету в банке, тоесть те способы, которые не подразумевают моментальной оплаты. Программа сможет понять, что такому покупателю не нужно отсылать письмо, которое только его разозлит?
Константин Ильин
04 апреля 2023, 19:08
0
все он ищет нормально, надо просто донастроить(в настройках добавить article:1) и запустить переиндексацию.
Михаил
04 апреля 2023, 16:12
0
По артикулу так и не ищет (((
Stepan
04 апреля 2023, 13:11
0
народ вопрос по getTables
кто-то реализовал там select из произвольных данных в фильтре?
т.е. по факту мне нужен список из 2 слов(например: такойто и такое)
в таблице значение так и хранится словом
Денис Усманов
04 апреля 2023, 08:33
0
Каждый раз, для каждого товара вписывать индивидуально. Такая была задача от заказчика.