Андрей

Андрей

С нами с 28 февраля 2013; Место в рейтинге пользователей: #138

Как настроить запуск php скрипта через cron?

Добрый день!

Есть php скрипт для импорта товаров. Товаров много и надо импортировать их по частям, штук по 50 например. Обычно я делаю это с помощью ajax, сохраняя шаги в сессию и перезапускаю скрипт. Но сейчас нужно что бы скрипт запускался автоматически без участия пользователя.

Пробовал запускать из консоли
php путь/к/скрипту.php
, думал что там нет лимитов никаких и можно обойтись без шагов, но через несколько секунд пишет Killed.

Как сделать это через cron или как-то еще, что бы скрипт запускался каждый день и импортировал товары по частям? Умеет ли крон работать с сессиями и в рамках одной задачи перезапускать скрипт?
Андрей
23 декабря 2018, 16:31
modx.pro
1 061
0

mFilter2 сортировка по цене

Добрый день.

На сайте есть сортировка товаров по цене и скидки, в общем-то все работает, но когда есть скидка на товар, сортировка происходит с учетом старой цены, т.е. новая цена не учитывается.

Например:
— Товар 1 — 5000р
— Товар 2 — 4000р
— Товар 3 — 3000р

Допустим скидка на второй товар 2000р

Должно быть так:
— Товар 1 — 5000
— Товар 3 — 3000
— Товар 2 — 2000/4000

Но сейчас только появляется старая цена и сортировка остается как в первом варианте.

Для скидок используется пакет Discontrol.

Как это можно исправить?
Андрей
10 марта 2017, 11:29
modx.pro
1 705
0

Добавить поля в таблицу заказов

Нужно добавить поле город в таблицу заказов.

В настройке ms2_order_grid_fields, в таблице modx_ms2_orders добавил новое поле, так же добавил в этих файлах:
/assets/components/minishop2/js/mgr/orders/orders.grid.js
/core/components/minishop2/model/minishop2/mysql/msorder.map.inc.php
/core/components/minishop2/model/schema/minishop2.mysql.schema.xml

Поле отображается, только если заполнить его в базе. При создании заказа ничего не записывается, хотя input в форме есть.

Как забрать данные из ms2_order_addresses и вывести в таблице заказов?
Андрей
01 марта 2017, 13:42
modx.pro
1 204
0

Как выбрать ресурсы с TV c пустым значением?

Здравствуйте.

Нужно выбрать товары у которых значение ТВ поля пусто.

Пробовал разные варианты в where, везде выдает 0

$c = $modx->newQuery('msProduct');
$c->innerJoin('modTemplateVarResource', 'site_id', [
  'msProduct.id = site_id.contentid',
  'site_id.tmplvarid = 23',
]);
$c->where([
  'site_id.value' => null,
  //'site_id.value' => '',
  //'site_id.value:IS' => null,
  //'site_id.value:IS' => '',
  //'site_id.value:=' => null,
  //'site_id.value:=' => '',
]);

$goods = $modx->getCount('msProduct', $c);

Если писать 'site_id.value:!=' => null, то выводит верно, т.е. код работает.

Как выбрать товары с пустым полем?
Андрей
26 декабря 2016, 11:45
modx.pro
1
1 830
0

Поменять цену у товара через плагин

У некоторых товаров есть коэффициент, мне надо менять цену в зависимости от этого.

На другом проекте смена цены работала так, но там был minishop 2.2

if ($modx->event->name == 'msOnGetProductPrice') {

	$values = & $modx->event->returnedValues;

};

Сейчас в minishop 2.4 &values возвращает NULL, как быть? Какое-то другое событие появилось?
Андрей
06 ноября 2016, 09:06
modx.pro
2
4 853
0

Как добавить модификацию продукта?

Как добавить модификацию через процессор?

У товара нет никаких модификаций.

Пишу так, выводит ошибку о том что поле price должно быть уникально
$modification_data = array(
  'rid' => 45019,
  'type' => 1,
  'price' => $good_price,
  'article' => $good_article,
  'weight' => '',
  'count' => 0,
  'active' => 1
);

$response = $modx->runProcessor('modification/create', $modification_data, array(
  'processors_path' => MODX_CORE_PATH.'components/msoptionsprice/processors/mgr/'
));

if ($response->isError()) {
  print_r($response->getResponse());
}
Андрей
21 сентября 2016, 14:21
modx.pro
1 237
0

Баг при сохранении опций

Добрый день.

В версии minishop 2.2, создаю свои опции с типом поля Текстовое поле, например опцию Рама. Далее в поле пишу 18", после сохранения все значения опций пропадают, происходит из-за того что в значении есть кавычки ".

Можно это как-то исправить?
Андрей
19 сентября 2016, 07:48
modx.pro
1 013
0

Как записать опции товару?

Добрый день.

Нужно записать опции к товару, никак не пойму как это сделать. Опции типа combo-box, нужно записывать туда несколько значений. Пробовал много вариантов:
Андрей
06 сентября 2016, 10:37
modx.pro
6
7 550
0

Как получить список опций у категории?

Добрый вечер.

Пишу импорт товаров, возникло пару затруднений.

Через API MODX:
1. Как получить список опций у категории?
2. Как задать опции категории?

В документации что-то не нашел ничего на эту тему.

Можно напрямую из базы брать конечно, но мне так не хочется делать.
Андрей
23 августа 2016, 15:54
modx.pro
2 977
0

Сортировка продуктов по цене

Добрый день.

Не получается отсортировать по цене, не пойму что ему не нравится:
$query = $modx->newQuery('msProduct');
$query->where(array(
  'parent:IN' => $unique
));
$query->sortby('Data.price', 'ASC');
$query->limit(1);

$goods = $modx->getCollection('msProduct', $query);

выдает ошибку
Error 42S22 executing statement: 
Array
(
    [0] => 42S22
    [1] => 1054
    [2] => Unknown column 'Data.price' in 'order clause'
)

Без sortby все работает.
Андрей
15 августа 2016, 09:24
modx.pro
1 234
0