Когда заказчик оформляет заказ, то нам нужно создать счет и отправить его клиенту. Типовой способ, предполагает, что счет создается на диске в виде html файла, но будет проблема с его редактированием. Но мы знаем, что в блоге есть страницы. Их легко редактировать, можно скрывать и отображать. Таким образом, принимаем важное решение, создаем шаблон счета в разделе блога Страницы и скрываем ее (не публикуем). И когда пользователь нажимает кнопку Купить, открываем эту страницу, заполняем ее сведениями клиента и отправляем ее ему и нам для контроля.
Рассмотрим такую необычную страницу. Видно, что кнопка ОПУБЛИКОВАТЬ доступна, значит она не видна никому, кроме администратора сайта. Сам счет состоит разметки в виде таблицы и полей, которые обернуты в квадратные скобки. Итак эту страницу можно легко прочитать, изменить, заполнить данными клиента и отправить по email в формате html. Для определения текста счета в базе данных будет использовать необычное название страницы Order.LetterEmail. Таким образом, мы имеем Все, что нам нужно для обработки заказов.
Второй счет, который нам будет нужен, называется Order.LetterKeyFile. После того, когда будет выставлен счет и оплачен, то нам необходимо отправить ему сообщение о том, что файл можно загрузить. Для этого тоже создаем шаблон с пустыми полями, а потом их заполняем.