/**
  * Возвращает преобразованную форму корзины, добавляя в нее кнопки и возможность изменения
  * @return strign HTML код формы заказа
  */
 public function getBasketHTML()
 {
     // Начало вывода
     $output = $this->basket->getHTML();
     $output = '<form class="basketForm" action="' . $this->basketURL . '" method="post">' . '<input type="hidden" name="' . SIMPLE_BASKET_MODE . '" value="' . SIMPLE_BASKET_UPDATE . '" />' . preg_replace(array('/<td class="quo" data-value="([0-9]+)" data-id="([0-9]+)">[0-9]+/'), array('<td class="quo"><input type="text" name="' . SIMPLE_BASKET_UPDATE . '_\\2" value="\\1" />'), $output) . '<div class="buttons"><button class="update" type="submit">' . __('Update', 'simple_basket') . '</button></div>' . '</form>';
     return $output;
 }
Ejemplo n.º 2
0
 public function add()
 {
     $this->validateNonce();
     if (!isset($_REQUEST['id'])) {
         die('ID not specified');
     }
     // Код товара
     $id = (int) $_REQUEST['id'];
     $product = get_post($id);
     $title = $product->post_title;
     // Цена
     $price = simple_basket_custom_fields($id, get_option('simple_basket_catalog_price'));
     // Вычисляем категорию по таксономии
     $category = '';
     // Тип записи каталога товара
     $postType = $product->post_type;
     // Таксономии записи
     $taxonomies = get_object_taxonomies($postType);
     // Ищем таксономию, которая не тег
     foreach ($taxonomies as $taxonomy) {
         if (strpos($taxonomy, 'tag') !== FALSE) {
             continue;
         }
         // Берем элементы этой таксономии
         $categories = get_the_terms($id, $taxonomy);
         $category = count($categories) > 0 ? $categories[0]->name : '';
         // Следующие таксономии не рассматриваем
         break;
     }
     // Добавляем в корзину
     if (!empty($title)) {
         $this->basket->add($id, $title, $price, $category);
     }
     $this->responce($this->basket);
 }
Ejemplo n.º 3
0
 /**
  * Возвращает экземпляр класса
  * @static
  * @return SimpleBasketOrder
  */
 public static function create()
 {
     if (!self::$instance) {
         self::$instance = new SimpleBasketOrder();
     }
     return self::$instance;
 }