Právě je 19 dub 2024 20:58

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 2 ] 
Autor Zpráva
 Předmět příspěvku: PrestaShop 1.5 - Skytí košíku v hlavičce při nulovém počtu zboží
PříspěvekNapsal: 18 bře 2014 21:06 

Registrován:
28 úno 2011 01:48
Příspěvky:
84
Tato varianta mě také zajímá, resp. možnost zda by se dalo dosáhnout toho, aby se košík zobrazil v hlavičce ale až po přidání nějakého zboží..?


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop 1.5 - Skytí košíku při nulovém počtu produktů
PříspěvekNapsal: 19 bře 2014 13:40 
C4 podpora
C4 podpora

Registrován:
30 čer 2009 09:14
Příspěvky:
8504
Dobrý den,

jelikož by se řešení mohlo hodit i ostatním zákazníkům, uvedu zde postup. Jinak jsou takové úpravy na míru nad rámec podpory a s případnou realizací se obracejte na naše partnery. Skrytí a zobrazení košíku lze dosáhnout zásahem do šablony modulu Blok s informacemi o uživateli a javascriptu v modulu Blok košíku. Úprava bude vypadat např. takto:

  1. V soubor modules/blockuserinfo/blockuserinfo.tpl upravte tuto část kódu:
    Kód:
    {if !$PS_CATALOG_MODE}
    <li id="shopping_cart">
       <a href="{$link->getPageLink($order_process, true)|escape:'html'}" title="{l s='View my shopping cart' mod='blockuserinfo'}" rel="nofollow">{l s='Cart' mod='blockuserinfo'}
       <span class="ajax_cart_quantity{if $cart_qties == 0} hidden{/if}">{$cart_qties}</span>
       <span class="ajax_cart_product_txt{if $cart_qties != 1} hidden{/if}">{l s='Product' mod='blockuserinfo'}</span>
       <span class="ajax_cart_product_txt_s{if $cart_qties < 2} hidden{/if}">{l s='Products' mod='blockuserinfo'}</span>
       <span class="ajax_cart_total{if $cart_qties == 0} hidden{/if}">
          {if $cart_qties > 0}
             {if $priceDisplay == 1}
                {assign var='blockuser_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant}
                {convertPrice price=$cart->getOrderTotal(false, $blockuser_cart_flag)}
             {else}
                {assign var='blockuser_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant}
                {convertPrice price=$cart->getOrderTotal(true, $blockuser_cart_flag)}
             {/if}
          {/if}
       </span>
       <span class="ajax_cart_no_product{if $cart_qties > 0} hidden{/if}">{l s='(empty)' mod='blockuserinfo'}</span>
       </a>
    </li>
    {/if}

    na následující tvar:
    Kód:
    {if !$PS_CATALOG_MODE}
    <li id="shopping_cart" style="height:40px;">
    <div class="skrytykosik {if $cart_qties == 0} hidden{/if}">
       <a href="{$link->getPageLink($order_process, true)|escape:'html'}" title="{l s='View my shopping cart' mod='blockuserinfo'}" rel="nofollow">{l s='Cart' mod='blockuserinfo'}
       <span class="ajax_cart_quantity{if $cart_qties == 0} hidden{/if}">{$cart_qties}</span>
       <span class="ajax_cart_product_txt{if $cart_qties != 1} hidden{/if}">{l s='Product' mod='blockuserinfo'}</span>
       <span class="ajax_cart_product_txt_s{if $cart_qties < 2} hidden{/if}">{l s='Products' mod='blockuserinfo'}</span>
       <span class="ajax_cart_total{if $cart_qties == 0} hidden{/if}">
          {if $cart_qties > 0}
             {if $priceDisplay == 1}
                {assign var='blockuser_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant}
                {convertPrice price=$cart->getOrderTotal(false, $blockuser_cart_flag)}
             {else}
                {assign var='blockuser_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant}
                {convertPrice price=$cart->getOrderTotal(true, $blockuser_cart_flag)}
             {/if}
          {/if}
       </span>
       <span class="ajax_cart_no_product{if $cart_qties > 0} hidden{/if}">{l s='(empty)' mod='blockuserinfo'}</span>
       </a>
    </div>
    </li>
    {/if}

    Takže kód košíku se obalil vrstvou div s třídou skrytykosik, která je při nulovém počtu zboží v košíku skrytá. A výška košíku je nastavena na 40px pomocí <li id="shopping_cart" style="height:40px;"> (příp. si upravte na vlastní výšku).

  2. A ještě je potřeba přidat javascriptové skrývání a zobrazení do souboru modules/blockcart/ajax-cart.js, ve kterém najděte tento řádek:
    Kód:
    $('.ajax_cart_total').fadeIn('slow');

    a za něj přidejte na nový řádek:
    Kód:
    $('.skrytykosik').fadeIn('slow');

    A pak najděte řádek:
    Kód:
    $('.ajax_cart_no_product').show('slow');

    a za něj přidejte na nový řádek:
    Kód:
    $('.skrytykosik').fadeOut('slow');

Aby se změna v šabloně projevila, tak nezapomeňte v administraci aplikace v sekci Nástroje > Výkon přepnout volbu Cache pro šablonu na Překompilovat šablony, pokud byly soubory zaktualizovány (příp. Vynucená kompilace).

_________________
Radek Plašil
Webhosting C4
https://www.c4.cz/


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 2 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
cron
FTP Uploader
Staňte se naším zákazníkem!
Hledáme kolegy
PrestaShop partneři

Seznam všech partnerů

PrestaShop Hosting
Návody pro C4

© 2009-2024 ČESKÝ WEBHOSTING s.r.o. Kontaktní e-mail: forum@c4.cz
Diskuzní fórum využívá technologie: phpBB, phpBB-SEO.com, phpBB.cz