Всего: 2 1 2 >
 Определить контент из карточки товара в TAB
adwebzoom


Cпециалист
: 123
: 05-11-2013


24-11-2021 18:38
Добрый день.

Модуль "Вопросы и Ответы".
Встал криво, не отображается в Tab в карточке товара, а подгружается под описанием.

Причем модуль присутствует в хуках displayProductTab и displayProductTabContent

Возможно в product.tlp не прописался модуль? Подскажите, где искать решение?

Часть кода product.tlp где прописываются tabы:
Код:
<ul class="product-info-tabs nav nav-stacked">
              {if isset($product) && $product->description}
                <li class="product-description-tab"><a data-toggle="tab" href="#product-description-tab-content">{l s='More info'}</a></li>
              {/if}
              {if (isset($quantity_discounts) && count($quantity_discounts) > 0)}
                <li class="product-discount-tab"><a data-toggle="tab" href="#product-discount-tab-content">{l s='Volume discounts'}</a></li>
              {/if}
              {if isset($features) && $features}
                <li class="product-features-tab"><a data-toggle="tab" href="#product-features-tab-content">{l s='Data sheet'}</a></li>
              {/if}
              {if isset($attachments) && $attachments}
                <li class="product-attachments-tab"><a data-toggle="tab" href="#product-attachments-tab-content">{l s='Download'}</a></li>
              {/if}
              {if isset($product) && $product->customizable}
                <li class="product-customizable-tab"><a data-toggle="tab" href="#product-customizable-tab-content">{l s='Product customization'}</a></li>
              {/if}
              {hook h="displayProductVideoTab" product=$product}
            </ul>


 
 
adwebzoom


Cпециалист
: 123
: 05-11-2013


24-11-2021 20:20
Добавил в product.tlp в:
Код:
<div class="product-info-container">


такой код, по подобию других вкладок
Код:
{if isset($qnas) && $qnas}
                <li class="idTabHrefShort page-product-heading"><a data-toggle="tab" href="#qnaTab">{l s='Ask a question' mod='prestaqna'}</a></li>
              {/if}


кнопка в карточке в табе появилась, но при надатии ничего не происходит, а контент как был под описанием, так и остался.

После, сдесь же в:
Код:
<div class="tab-content">


добавляю конент

Код:
{if isset($qnas) && $qnas}
            <div class="qna-answers">
                <ul>
                    {foreach from=$qnas item=qna}
                        <li>
                                <span class="name">
                                    {l s='Asked by' mod='prestaqna'} {if empty($qna.name)}{l s='a guest' mod='prestaqna'}{else}{$qna.name|escape:'hmlall'}{/if} <br />
                                    {if $qna.date_added !="0000-00-00"}
                                        <em>{l s='on' mod='prestaqna'} {dateFormat date=$qna.date_added}</em>
                                    {/if}
                                </span>
                                <span class="question">{$qna.question|escape:'htmlall'}</span>
                                <span class="answer">
                                    <strong>{l s='Answer:' mod='prestaqna'}</strong>    <br/>
                                    {$qna.answer|escape:'htmlall'}
                                </span>

                            <div style="clear:both"></div>    
                        </li>
                    {/foreach}
                </ul>
            </div>
            
        {/if}


Эту часть кода взял непосредственно из шаблона модуля.

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

 
 
Danunah


Новичок
: 8
: 04-11-2021


24-11-2021 23:32
Что за модуль такой?
Но по любому, если модуль, после установки, присутствует в хуках displayProductTab и displayProductTabContent, выше описаные телодвижения не обязательны
Нужно смотреть что за .tpl выводятся в эти хуки и смотреть их содержимое.
Возможно их содержимое для вашего шаблона не подойдет(без напилинга), а разработан для дефолтной темы default-bootstrap


Сообщение отредактировал Danunah (25-11-2021 00:34)
 
  
Triton63


Профессионал
: 886
: Оренбург
: 28-05-2011


25-11-2021 00:04
Если модуль подключается к хуку displayProductTab то он расчитывает на присутствие в коде product.tpl {$HOOK_PRODUCT_TAB}
На этот хук "цепляется" кнопка
А так же, в коде product.tpl должен присутствовать {$HOOK_PRODUCT_TAB_CONTENT}, иначе подключение к displayProductTabContent
не имеет смысла
Судя по приведенному небольшому коду это один из шаблонов от TemplateMonster
И в нем уже отсутствует {$HOOK_PRODUCT_TAB}
По уму должен находится сразу после
Код:
{hook h="displayProductVideoTab" product=$product}

 



Интернет-магазин ионизатор воздуха ЭкоЮнит: Лампа Чижевского
shop.aeroion.ru
-------------------------------------------------------------------------------
  
adwebzoom


Cпециалист
: 123
: 05-11-2013


25-11-2021 17:19
в product.tpl присутствует уже код

Код:
<!--HOOK_PRODUCT_TAB -->
        <section class="page-product-box">
          {$HOOK_PRODUCT_TAB}
          {if isset($HOOK_PRODUCT_TAB_CONTENT) && $HOOK_PRODUCT_TAB_CONTENT}{$HOOK_PRODUCT_TAB_CONTENT}{/if}
        </section>
        <!--end HOOK_PRODUCT_TAB -->


он как раз размещается там где выводится контент других табов. Пробовал разбивать это код, переносить, но пока не получается.
 
 
Triton63


Профессионал
: 886
: Оренбург
: 28-05-2011


25-11-2021 20:00
Цитата:( adwebzoom @ 25-11-2021 15:19 Смотреть сообщение )
в product.tpl присутствует уже код

Код:
<!--HOOK_PRODUCT_TAB -->
        <section class="page-product-box">
          {$HOOK_PRODUCT_TAB}
          {if isset($HOOK_PRODUCT_TAB_CONTENT) && $HOOK_PRODUCT_TAB_CONTENT}{$HOOK_PRODUCT_TAB_CONTENT}{/if}
        </section>
        <!--end HOOK_PRODUCT_TAB -->


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

То есть судя по приведенным кускам кода из твоего product.tpl
у тебя горизонтальные табы одновременно с вертикальными?
Зачем? По любому вертикальные не используются.
{$HOOK_PRODUCT_TAB} перенести под
Код:
{hook h="displayProductVideoTab" product=$product}

перед закрывающем </ul>

так
Код:
{hook h="displayProductVideoTab" product=$product}
  {$HOOK_PRODUCT_TAB}
</ul>

Ну и {if isset($HOOK_PRODUCT_TAB_CONTENT) && $HOOK_PRODUCT_TAB_CONTENT}{$HOOK_PRODUCT_TAB_CONTENT}{/if}
перенеси под
Код:
{hook h="displayProductVideoTabContent" product=$product}


так
Код:
{hook h="displayProductVideoTabContent" product=$product}
{if isset($HOOK_PRODUCT_TAB_CONTENT) && $HOOK_PRODUCT_TAB_CONTENT}{$HOOK_PRODUCT_TAB_CONTENT}{/if}
</div>


Оставшееся
Код:
<!--HOOK_PRODUCT_TAB -->
        <section class="page-product-box">

        </section>
        <!--end HOOK_PRODUCT_TAB -->

Закоментируй так
Код:
{*    
<!--HOOK_PRODUCT_TAB -->
   <section class="page-product-box">

        </section>
        <!--end HOOK_PRODUCT_TAB -->
*}

Я такое делал в шаблоне theme_autoworld
Нужно было вавести стандартный модуль Комментарии к товарам
Потому и код знакомый

Если возможно выложи свой product.tpl и напиши, что за модуль
Случаем не Q&As Block in product page от Nemo?

 



Интернет-магазин ионизатор воздуха ЭкоЮнит: Лампа Чижевского
shop.aeroion.ru
-------------------------------------------------------------------------------
  
adwebzoom


Cпециалист
: 123
: 05-11-2013


25-11-2021 21:47
Да, модуль именно этот самый Q&As Block in product page.
А другие то табы работают (Описание/Характеристики/Файлы).

Код product.tlp прикрепил.


:
2021-11-25_17-42-58.png - 16.3KB, : 74 ()
:

 product.tpl( : 49.95KB : 63 )
 
 
Triton63


Профессионал
: 886
: Оренбург
: 28-05-2011


25-11-2021 23:38
Цитата:( adwebzoom @ 25-11-2021 19:47 Смотреть сообщение )
Да, модуль именно этот самый Q&As Block in product page.
А другие то табы работают (Описание/Характеристики/Файлы).

Код product.tlp прикрепил.

Ну так дело то все в модуле, а не в табах, делов то переместить displayProductTab и displayProductTabContent в product.tpl
А вот с модулем..
Модуль писался в бытность prestashop 1.5. Посмотри prestaqna.php модуля там прописаны условия для хуков
hookProductTab строка 384 для престашоп версии старше 1.5 не выводить кнопку, (модуль изначально расчитан на работу с дефолтным шаблоном),
а в hookProductTabContent строка 391 выводить шаблон именно для для 1.6 prestaqna_tab_content.tpl
в других случаях подключать prestaqna_tab_content15.tpl

возвращаю исправленый product.tpl, сравни с исходным


:

 product.tpl( : 50.1KB : 244 )
 
: 5 | : adwebzoom



Интернет-магазин ионизатор воздуха ЭкоЮнит: Лампа Чижевского
shop.aeroion.ru
-------------------------------------------------------------------------------
  
Triton63


Профессионал
: 886
: Оренбург
: 28-05-2011


25-11-2021 23:44
:
:
 
: 5 | : adwebzoom



Интернет-магазин ионизатор воздуха ЭкоЮнит: Лампа Чижевского
shop.aeroion.ru
-------------------------------------------------------------------------------
  
adwebzoom


Cпециалист
: 123
: 05-11-2013


26-11-2021 00:13
Благодарю, за помощь!
Буду ковырять.
 
 
   
Всего: 2 1 2 >