minishop2 вытащить для плагина данные заказа по id
как в плагине самописном по АПИ вытащить данные заказа, зная ID этого заказа
события из минишопа не используются
события из минишопа не используются
Комментарии: 7
$order = $modx->getObject('msOrder', $id);
Спасибо
Абсолютно все данные о заказе (вроде):
$order = $modx->getObject('msOrder', $orderID);
$output = array(
'order' => $order->toArray(),
'user' => $order->User->toArray(),
'profile' => $order->UserProfile->toArray(),
'address' => $order->Address->toArray(),
'delivery' => $order->Delivery->toArray(),
'payment' => $order->Payment->toArray(),
'status' => $order->Status->toArray(),
'products' => []
);
foreach($order->Products as $product){
$output['products'][] = $product->toArray();
}
print_r($output);
мне надо было вытащить именно доп поля extfld, которые я создавал
Не знаю как ты создавал дополнительные поля, но предположу, что по инструкции из сети, и тогда, скорее всего, данные сохраняются в поле properties в формате json, в этом случае можно из получить так
$extFields = json_decode($order->get('properties'),1); // в результате получишь массив
доп поля делал по этой инструкции
в плагине так вытаскивал
в плагине так вытаскивал
$order = $modx->getObject('msOrderAddress', array('id'=> $properties['id']));
$prop = $order->get('properties');
и дальше из массива prop брал поля нужные, по идее правильно, по крайней мере работает) $order = $modx->getObject('msOrder', $orderID);
$prop = $order->Address->get('properties');
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.