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


Табы для дефолтового шаблона ShopCMS 3.1.3


  • Вы не можете ответить в тему
Сообщений в теме: 7

#1 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 02 April 2015 - 03:38 PM

Табы для дефолтового шаблона ShopCMS 3.1.3, построенного на bootstrap 3.0.

Раньше я эти табы делал на jquery-ui (см. https://cpu.badisoft...ook-IQ-701.html), там есть специально заточенный виджет для этого, но имея в "ядре шаблона" bootstrap использовать jquery-ui как-то глупо, ведь в bootstap есть свои табы, более интересные конструктивно и имеющие с шаблоном общие цветовые, размерные и прочие свойства.
Ниже идет кусочек файла product_deatailed.tpl.html, только сами табы, лишнее удалено.


<ul class="nav nav-tabs">
<li><a href="#tab1" data-toggle="tab">Краткое</a></li>
<li{if !$smarty.get.sent && !$smarty.get.nosent && !$smarty.request.disc} class="active"{/if}><a href="#tab2" data-toggle="tab">Полное</a></li>
{if $product_related_number}<li><a href="#tab3" data-toggle="tab">Опции</a></li>{/if}
{if $smarty.const.CONF_PRODUCT_MAIL}<li{if $smarty.get.sent || $smarty.get.nosent} class="active"{/if}><a href="#tab4" data-toggle="tab">Вопрос?</a></li>{/if}
{if $smarty.const.CONF_USE_DISCUSS}<li{if $smarty.request.disc} class="active"{/if}><a href="#tab5" data-toggle="tab">Отзывы({$product_reviews_count})</a></li>{/if}
</ul>

<div class="tab-content">

<div id="tab1" class="tab-pane fade">
{* код вывода краткого описания *}
{include file="product_brief_tab.tpl.html"}
</div>

<div id="tab2" class="tab-pane fade{if !$smarty.get.sent && !$smarty.get.nosent && !$smarty.request.disc} in active{/if}">
{* код вывода полного описания *}
[...]
</div>

{if $product_related_number}
<div id="tab3" class="tab-pane fade">
{* рекомендуемые товары *}
[...]
</div>
{/if}

{if $smarty.const.CONF_PRODUCT_MAIL eq 1}
<div id="tab4" class="tab-pane fade{if $smarty.get.sent || $smarty.get.nosent} in active{/if}">
{* вывод формы для отправки вопроса *}
{include file="product_mail_tab.tpl.html"}
</div>
{/if}

{if $smarty.const.CONF_USE_DISCUSS}
<div id="tab5" class="tab-pane fade{if $smarty.request.disc} in active{/if}">
{* вывод дискуссий *}
{include file="product_discussion.tpl.html"}
</div>
{/if}

</div>


Пример: http://new.badisoft....ook-iq-701.html

Источник:
http://bootstrap-3.r...ts.php#nav-tabs
http://bootstrap-3.r...script.php#tabs
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#2 makki

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 148 сообщений
Репутация: 7
Начинающий

Отправлено 25 April 2015 - 12:40 PM

Спасибо! Не могли бы вы еще поделиться содержанием файлов, включенных в табы product_mail_tab.tpl.html и т.д?
  • 0

#3 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 25 April 2015 - 06:03 PM

Спасибо! Не могли бы вы еще поделиться содержанием файлов, включенных в табы product_mail_tab.tpl.html и т.д?

http://vsupport.club/topic/2223-табы-в-полном-описании-товара-краткоеполноео/
Ну а правка под 3.1.3 - самостоятельно.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#4 m0skit

    Пользователь

  • Пользователи
  • PipPip
  • 27 сообщений
Репутация: 0
Начинающий

Отправлено 11 December 2015 - 05:50 AM

Спасибо, но как сделать чтобы выбраная вкладка оставалась активной после перезагрузки страницы?
  • 0

#5 Dbus

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 1116 сообщений
Репутация: 174
Мастер
  • ГородОдесса

Отправлено 11 December 2015 - 10:43 AM

Спасибо, но как сделать чтобы выбраная вкладка оставалась активной после перезагрузки страницы?

Писать ее состояние в куки или local storage. Или get
  • 0
502 Bad Gateway

#6 m0skit

    Пользователь

  • Пользователи
  • PipPip
  • 27 сообщений
Репутация: 0
Начинающий

Отправлено 11 December 2015 - 04:29 PM

Писать ее состояние в куки или local storage. Или get


А, ну все понятно, пошел писать. Спасибо за подсказку.

А если серьезно, то если бы я знал как написать, то я бы не спрашивал как это сделать. Не находите?
  • 0

#7 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 11 December 2015 - 06:56 PM

А если серьезно, то если бы я знал как написать, то я бы не спрашивал как это сделать. Не находите?

А какого ответа Вы хотите?
Когда код уже есть - им обычно не жалко поделиться.
Но не писать же код за Вас для Вашего коммерческого сайта.
А рекомендация совершенно правильная - сохранять или передавать (get, post, cookie, sql, file, moon) текущее состояние табов, чтобы к нему можно было вернуться. Наиболее просто через get или через cookie.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#8 Dbus

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 1116 сообщений
Репутация: 174
Мастер
  • ГородОдесса

Отправлено 11 December 2015 - 08:11 PM

А если серьезно, то если бы я знал как написать, то я бы не спрашивал как это сделать. Не находите?

Дать подсказку в какую сторону думать и писать готовое решение на пустом энтузиазме по первому чиху вопрошающего - это немного разные по трудоемкости и затраченному времени задачи. Не находите? :)
  • 0
502 Bad Gateway