Skip to content
  1. Extras
  2. miniShop2
  3. Snippets
  4. msOrder

msOrder

Checkout form snippet.

Parameters

ParameterDefaultDescription
tpltpl.msOrderOutput chunk
userFieldsAssociative array mapping order fields to user profile fields: "order_field" => "profile_field".
showLogShow debug info. Only for users authorized in context "mgr".

Подсказка

You can also use other general pdoTools parameters.

Output

The snippet expects a Fenom chunk. It passes 5 variables:

  • order — order data from session: delivery, payment, cost
  • deliveries — available delivery methods
  • payments — payment methods
  • form — customer data: email, receiver, phone, index, region, city, street, building, room, and any &userFields mappings
  • errors — form fields with validation errors

Placeholders

To see all placeholders, use an empty chunk:

modx
<pre>[[!msOrder?tpl=``]]</pre>
Example
php
Array
(
    [order] => Array ( [cost] => 2 300, [cart_cost] => 2 300, [delivery_cost] => 0, [discount_cost] => 0 )
    [form] => Array ( [receiver] => Ivan Ivanov, [email] => ivanov@example.com )
    [deliveries] => Array ( [1] => Array ( [id] => 1, [name] => Pickup, ... ) )
    [payments] => Array ( [1] => Array ( [id] => 1, [name] => Cash, ... ) )
    [errors] => Array ( )
)

Checkout

Use together with other snippets on the checkout page:

modx
[[!msCart]] <!-- Cart; hidden after order is created -->

[[!msOrder]] <!-- Checkout form; hidden after order is created -->

[[!msGetOrder]] <!-- Order info; shown after order is created -->

Examples

Get receiver name from username instead of fullname for logged-in users:

modx
[[!msOrder?
  &userFields=`{"receiver":"username"}`
]]