Перейти к содержимому


Фотография
- - - - -

Корзина появляющаяся только после заказа


Лучший Ответ joejoker , 08 August 2013 - 19:54

К сожалению alexmixaylov, не совсем прав. В шаблоне можно всего лишь убрать надпись "Ваша корзина пуста". При этом сам модуль будет отрендерен.

 

Для того чтобы модуль выводился только тогда, когда в корзине что то есть, нужно править файл модуля mod_jbzoo_basket.php. Но, Вы должны учитывать то, что данное изменение может затереться при обновлении. Это раз. А во-вторых, корзина будет отрисована только после обновления страницы, или переходе на другую.

 

В общем, для того что бы спрятать сам модуль, когда в корзине ничего нет, нужно в данном файле, сразу после строки:

require_once dirname(__FILE__) . DS . 'helper.php';

Добавить вот этот код:


$basketHelper = new JBZooBasketHelper($params);
$basketItems = $basketHelper->getBasketItems();
if(!empty($basketItems)){

А закрывающую, фигурную скобку поместить в самом конце файла.

 

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

 

Дело в том что на данном этапе, нет полной ajax синхронизации модуля с самой корзиной.

 

 

Перейти к сообщению


  • Закрытая тема Тема закрыта
Сообщений в теме: 6

#1 registr

registr

Отправлено 08 August 2013 - 08:18

Можно ли сделать чтоб модуль корзины отображался только после того как покупатель что-то закажет?


  • 0

#2 alexmixaylov

alexmixaylov

Отправлено 08 August 2013 - 10:57

Легко

Нужно править default.php корзины


  • 0

#3 registr

registr

Отправлено 08 August 2013 - 18:11

в ПХП не силен, может подскажете какой именно файл и что там поменять?


  • 0

#4 joejoker

joejoker

Отправлено 08 August 2013 - 19:54   Лучший Ответ

К сожалению alexmixaylov, не совсем прав. В шаблоне можно всего лишь убрать надпись "Ваша корзина пуста". При этом сам модуль будет отрендерен.

 

Для того чтобы модуль выводился только тогда, когда в корзине что то есть, нужно править файл модуля mod_jbzoo_basket.php. Но, Вы должны учитывать то, что данное изменение может затереться при обновлении. Это раз. А во-вторых, корзина будет отрисована только после обновления страницы, или переходе на другую.

 

В общем, для того что бы спрятать сам модуль, когда в корзине ничего нет, нужно в данном файле, сразу после строки:

require_once dirname(__FILE__) . DS . 'helper.php';

Добавить вот этот код:


$basketHelper = new JBZooBasketHelper($params);
$basketItems = $basketHelper->getBasketItems();
if(!empty($basketItems)){

А закрывающую, фигурную скобку поместить в самом конце файла.

 

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

 

Дело в том что на данном этапе, нет полной ajax синхронизации модуля с самой корзиной.

 

 


  • 0
В мире все совсем не сложно, если самому не усложнять.
Разработка индивидуальных решений для ZOO /JBZoo /Joomla

#5 alexmixaylov

alexmixaylov

Отправлено 08 August 2013 - 21:02

Я пробовал у себя удалить вывод 

 

else {
    echo '<p>' . JText::_('JBZOO_CART_ITEMS_NOT_FOUND') . '</p>';

 

в конце упомянутого файла

оставил только 

 

else {
    echo '';
 
или сделать так
else {
    echo '<div class="clr"></div>';
 
работает в обоих случаях
 
Насколько это правильно,  не могу сказать, наверное не очень :)
затрется при обновлении 100%
 
но работает и аякс, кстати тоже норм

 


  • 0

#6 joejoker

joejoker

Отправлено 09 August 2013 - 04:32

alexmixaylov, Я про это и говорил. Так вы удаляете только надпись "Ваша корзина пуста". Весь остальной html код, включая код от самой joomla будет отрендерен. Если у модуля задан заголовок, то он тоже будет отрисован. 


  • 0
В мире все совсем не сложно, если самому не усложнять.
Разработка индивидуальных решений для ZOO /JBZoo /Joomla

#7 alexmixaylov

alexmixaylov

Отправлено 09 August 2013 - 13:11

Я понял, если задать модулю оформление, имя, рамку картинку фоновую и т.д это все прорисуется  в любом случае

у меня пока голая корзина(кроме надписи ничего нет) поэтому все работает норм

 

спс за ликбез


  • 0




Click to return to top of page in style!