Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Редактирование Корзины Покупок


Recommended Posts

Всем доброго времени суток.
У меня стал вопрос изменить внешний вид корзины на главной странице.

<div class="btn-group" id="shopping_cart">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"> 
<i class="typcn typcn-shopping-cart"></i> 
<span class="title"> Корзина Покупок</span> 
<span class="font1">Товаров: 0 - (0.00 грн)</span> 
</button>
<div class="dropdown-menu">
<?php echo $cart; ?>
</div>
</div>

Интересует, как прикрутить: 

<div class="btn-group" id="shopping_cart">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<i class="typcn typcn-shopping-cart"></i> 
<span class="title"> Корзина Покупок</span> 
<span class="font1"><?php echo $text_items; ?></span>
</button>
<div class="dropdown-menu">
<?php echo $cart; ?>
</div>
</div>
 

При вот такой замене получаю:

Notice: Undefined variable: text_items in /home/vol2_7/cuccfree.com/cucch_15428377/htdocs/catalog/view/theme/default2/template/common/header.tpl on line 153

 

 Почему php машина ругается на : <span class="font1"><?php echo $text_items; ?></span>  ?
Подскажите как исправить. 
Зарание большое спасибо!

 

Надіслати
Поділитися на інших сайтах


Открыть контроллер модуля корзины и поискать там text_items, может станет понятней.
 
catalog\controller\module\cart.php

$this->data['text_items'] = sprintf($this->language->get('text_items'), $this->cart->countProducts() + (isset($this->session->data['vouchers']) ? count($this->session->data['vouchers']) : 0), $this->currency->format($total));
Надіслати
Поділитися на інших сайтах

 

Открыть контроллер модуля корзины и поискать там text_items, может станет понятней.

 

catalog\controller\module\cart.php

$this->data['text_items'] = sprintf($this->language->get('text_items'), $this->cart->countProducts() + (isset($this->session->data['vouchers']) ? count($this->session->data['vouchers']) : 0), $this->currency->format($total));

Забавно то, что при выводе в cart.tpl ошибок нет. В header.tpl ругается.

Надіслати
Поділитися на інших сайтах


Ещё раз внимательно прочитать сообщение выше.

Я посмотрел. Код полностью соответствует моему.

Возможно беда в 

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/cart.tpl')) {
$this->template = $this->config->get('config_template') . '/template/module/cart.tpl';
} else {
$this->template = 'default/template/module/cart.tpl';
}

PS. Я с php далеко не очень дружу. 

Добавление строки:

} else {
$this->template = 'default/template/module/cart.tpl';
$this->template = 'default/template/common/header.tpl';
}

Проблемы не решает.

Надіслати
Поділитися на інших сайтах


написано же в ошибке, не определена переменная в хидере. при чем тут карт? чтобы переменная показывалась в хидере она должна быть определена в контроллере хидер

Надіслати
Поділитися на інших сайтах


написано же в ошибке, не определена переменная в хидере. при чем тут карт? 

Для того что бы понять чего не хватает в хидере.

Надіслати
Поділитися на інших сайтах

Для того что бы понять чего не хватает в хидере.

я не тебе ответил, твой ответ вполне понятен. зачем вообще лезть в хидер, если хочешь поменять корзину так меняй вьюшку корзины

Надіслати
Поділитися на інших сайтах


я не тебе ответил, твой ответ вполне понятен. зачем вообще лезть в хидер, если хочешь поменять корзину так меняй вьюшку корзины

 в начале топика читаем код ошибки

Notice: Undefined variable: text_items in /home/vol2_7/cuccfree.com/cucch_15428377/htdocs/catalog/view/theme/default2/template/common/header.tpl on line 153

следовательно  в данный момент тс пытается прикрутить в хидер  и это не моя прихоть.

 

 

 1

 

это количество телодвижений,которые нужны для добавления в контроллер хидера той строки ,что я написал уже в первом сообщении.

 

 

только для чего всё это если сама корзина подключается в хидер одной строкой 

<?php echo $cart; ?>

а все телодвижения с классами уже в тплке самой корзины .

Надіслати
Поділитися на інших сайтах

 в начале топика читаем код ошибки

Notice: Undefined variable: text_items in /home/vol2_7/cuccfree.com/cucch_15428377/htdocs/catalog/view/theme/default2/template/common/header.tpl on line 153

следовательно  в данный момент тс пытается прикрутить в хидер  и это не моя прихоть.

 

 

это количество телодвижений,которые нужны для добавления в контроллер хидера той строки ,что я написал уже в первом сообщении.

 

 

только для чего всё это если сама корзина подключается в хидер одной строкой 

<?php echo $cart; ?>

а все телодвижения с классами уже в тплке самой корзины .

<div class="dropdown-menu">
<?php echo $cart; ?>
</div>

Это выпадающее меню. Которое подключается после нужной мне строки. Т.е миникорзина.

По делу:

В header.php

Дописал код

// Totals
$this->load->model('setting/extension');


$total_data = array(); 
$total = 0;
$taxes = $this->cart->getTaxes();


// Display prices
if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
$sort_order = array(); 


$results = $this->model_setting_extension->getExtensions('total');


foreach ($results as $key => $value) {
$sort_order[$key] = $this->config->get($value['code'] . '_sort_order');
}


array_multisort($sort_order, SORT_ASC, $results);


foreach ($results as $result) {
if ($this->config->get($result['code'] . '_status')) {
$this->load->model('total/' . $result['code']);


$this->{'model_total_' . $result['code']}->getTotal($total_data, $total, $taxes);
}


$sort_order = array(); 


foreach ($total_data as $key => $value) {
$sort_order[$key] = $value['sort_order'];
}


array_multisort($sort_order, SORT_ASC, $total_data); 
} 
}


$this->data['totals'] = $total_data;


$this->data['heading_title'] = $this->language->get('heading_title');


$this->data['text_items'] = sprintf($this->language->get('text_items'), $this->cart->countProducts() + (isset($this->session->data['vouchers']) ? count($this->session->data['vouchers']) : 0), $this->currency->format($total));

Если прописать просто

$this->data['text_items'] = sprintf($this->language->get('text_items'), $this->cart->countProducts() + (isset($this->session->data['vouchers']) ? count($this->session->data['vouchers']) : 0), $this->currency->format($total));

Проблема не решается. 

НО, даже после копипаста всего масива ошибка пропадает, но работать не хочет.

Надіслати
Поділитися на інших сайтах


Хз что ещё ответить.Корзина в хидер подключается  той самой  стройкой <?php echo $cart;?> и куда её там запихать уже не имеет значение.

Надіслати
Поділитися на інших сайтах

Хз что ещё ответить.Корзина в хидер подключается  той самой  стройкой <?php echo $cart;?> и куда её там запихать уже не имеет значение.

<html dir="<?php echo $direction; ?>" lang="<?php echo $lang; ?>">
    <head>        

<meta charset="UTF-8" />
        <title><?php echo $title; ?></title>
       <?php if ($cart) { ?>
        <link href="<?php echo $cart;?> ?>" rel="$cart" />
        <?php } ?>
    </head>

Так ты имеешь ввиду?

Надіслати
Поділитися на інших сайтах


Посеял где то свой шар магический,чтоб прояснить ситуацию.Как найду и прочту мысли,сразу отвечу.

Надіслати
Поділитися на інших сайтах

И что я должен в двух этих портянках лицезреть? Замысел который в итоге будет в шапке неизвестного мне магазина с неизвестными функциями корзины в неизвестном месте? Шар лучше пришли магический.Свой так и не нашёл.

Надіслати
Поділитися на інших сайтах

все что ты хочешь сделать с корзиной засунь во вьюху cart.tpl в хидере выведи корзину <?php echo $cart; ?>

если тебе разные блоки корзины надо по "разным углам распихать" то используй css стили

Надіслати
Поділитися на інших сайтах


И что я должен в двух этих портянках лицезреть? Замысел который в итоге будет в шапке неизвестного мне магазина с неизвестными функциями корзины в неизвестном месте? Шар лучше пришли магический.Свой так и не нашёл.

Совсем не понятный элемент шапки:

                            <div class="btn-group" id="shopping_cart">
                                <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"> 
<i class="typcn typcn-shopping-cart"></i> 
<span class="title"> Корзина Покупок</span> 
<span class="font1">Товаров: 0 - 0.00(грн)</span>
</button>
                                <div class="dropdown-menu">
                                    <?php echo $cart; ?>
                                </div>
                            </div>

Совсем понятная задача:

                            <div class="btn-group" id="shopping_cart">
                                <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"> 
<i class="typcn typcn-shopping-cart"></i> 
<span class="title"> Корзина Покупок</span> 
<span class="font1"><?php echo $text_items; ?></span>
</button>
                                <div class="dropdown-menu">
                                    <?php echo $cart; ?>
                                </div>
                            </div>

мб ты меня немного не понимаешь. 

<?php echo $text_items; ?> выводит кол-во товара и сумарную цену.

пример 5 500

Подключение его через header.php не удается. Коды выше.

Надіслати
Поділитися на інших сайтах


все что ты хочешь сделать с корзиной засунь во вьюху cart.tpl в хидере выведи корзину <?php echo $cart; ?>

если тебе разные блоки корзины надо по "разным углам распихать" то используй css стили

Выводится на 2 строчки ниже:

                                <div class="dropdown-menu">
                                    <?php echo $cart; ?>
                                </div>
и все работает. 

Это вывод "мини" корзины. if курсор на объекте.

post-688491-0-73684300-1414562396_thumb.jpg

Надіслати
Поділитися на інших сайтах


Да уж.

 

А что мешает сделать как написал lexxkrt ?

 

И не лезть ни в какие контроллеры а всё это сделать стилями?

Надіслати
Поділитися на інших сайтах

Да уж.

 

А что мешает сделать как написал lexxkrt ?

 

И не лезть ни в какие контроллеры а всё это сделать стилями?

Есть сайт:

http://essence-perfumum.ua/

Меня интересует то, как у него сделана корзина.

Хочу спилить ее полностью. Точь в точь.

Через CSS добился того, что не при клике, а при нахождении курсора на объекте выпадает "мини корзина" .

Но вопрос который не могу решить заключается ИМЕННО В СПЕЦИФИКЕ ДВИЖКА, а не решений CSS+HTML+JS и тд. Стоял конкретный вопрос, не методик изобретения велосипеда по путешествию около большой луны, а конкретно как ВНЕДРИТЬ оператор $text_items; в header.tpl . У человека который делал там - получилось.

При прописывании его в cart.tpl все корректно отображается.

НО в header.tpl ошибка.

Повторюсь, подскажи пожалуйста как внедрить его с card.php в header.php

Конкретно понимаю, что 

$this->data['text_items'] = sprintf($this->language->get('text_items'), $this->cart->countProducts() + (isset($this->session->data['vouchers']) ? count($this->session->data['vouchers']) : 0), $this->currency->format($total));

Именно то, что нужно. Но выше есть условия и переменные которые использует. Смотрю туда и ничего не понимаю...к сожалению. Потому и пишу с просьбой помочь.

Надіслати
Поділитися на інших сайтах


Есть сайт:

http://essence-perfumum.ua/

Меня интересует то, как у него сделана корзина.

Хочу спилить ее полностью. Точь в точь.

а чем эта корзина отличается от оригинальной опенкартовской, за исключением стилей?

Надіслати
Поділитися на інших сайтах


Через CSS добился того, что не при клике, а при нахождении курсора на объекте выпадает "мини корзина" .

 

 

для этого нужно всего одно значение в common.js сменить  с click например на hover или mouseover. 

 

А вот где там в примере  вторая  "зашифрованная корзина" в выпадающем списке в упор не вижу.

Надіслати
Поділитися на інших сайтах

Но вопрос который не могу решить заключается ИМЕННО В СПЕЦИФИКЕ ДВИЖКА, а не решений CSS+HTML+JS и тд. Стоял конкретный вопрос, не методик изобретения велосипеда по путешествию около большой луны, а конкретно как ВНЕДРИТЬ оператор $text_items; в header.tpl . У человека который делал там - получилось.

неправда там чистый опенкарт, никаких изменений нет, посмотри код, вся корзина в контейнере <div id="cart">. чтобы открывалось по щелчку, а не по наведению используй javascript, или bootstrap как там сделано

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.