Silvia - Tassen op 8 Posted February 23, 2015 Share Posted February 23, 2015 (edited) Hello, I've searched the internet and the prestashop forum for hours but I can't get my shopping cart in my blocktopmenu right. I've tried the solution given in this topic but it's not fully working. When I go to my site on my own laptop (using Chrome) everything looks fine (added sceenshot). But when i make the screen smaller of go to my site on my phone, the shopping cart isn't staying in place and is deformed. Website: https://tassenop8.nl/index.php Prestashop version: 1.6.0.9 Blocktopmenu.tpl: <!-- {if $MENU != ''} --> <!-- Menu --> <div id="block_top_menu" class="sf-contener clearfix col-lg-12"> <div class="cat-title">{l s="Categories" mod="blocktopmenu"}</div> <ul class="sf-menu clearfix menu-content"> {$MENU} {if $MENU_SEARCH} <li class="sf-search noBack" style="float:right"> <form id="searchbox" action="{$link->getPageLink('search')|escape:'html':'UTF-8'}" method="get"> <p> <input type="hidden" name="controller" value="search" /> <input type="hidden" value="position" name="orderby"/> <input type="hidden" value="desc" name="orderway"/> <input type="text" name="search_query" value="{if isset($smarty.get.search_query)}{$smarty.get.search_query|escape:'html':'UTF-8'}{/if}" /> </p> </form> </li> {/if} <!-- /ul --> <!-- /div--> <!--/ Menu --> <!-- {/if} --> blockcart.tpl: {* * 2007-2014 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Open Software License (OSL 3.0) * that is bundled with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * http://opensource.org/licenses/osl-3.0.php * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to [email protected] so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to http://www.prestashop.com for more information. * * @author PrestaShop SA <[email protected]> * @copyright 2007-2014 PrestaShop SA * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA *} <li style="float: right;"> <!-- MODULE Block cart --> {if isset($blockcart_top) && $blockcart_top} <div class="col-sm-4 clearfix{if $PS_CATALOG_MODE} header_user_catalog{/if}"> {/if} <div class="shopping_cart"> <a href="{$link->getPageLink($order_process, true)|escape:'html':'UTF-8'}" title="{l s='View my shopping cart' mod='blockcart'}" rel="nofollow"> <!-- <b>{l s='Cart' mod='blockcart'}</b> UITGEZET IVM FORMAAT WINKELWAGEN --> <span class="ajax_cart_quantity{if $cart_qties == 0} unvisible{/if}">{$cart_qties}</span> <span class="ajax_cart_product_txt{if $cart_qties != 1} unvisible{/if}">{l s='Product' mod='blockcart'}</span> <span class="ajax_cart_product_txt_s{if $cart_qties < 2} unvisible{/if}">{l s='Products' mod='blockcart'}</span> <span class="ajax_cart_total{if $cart_qties == 0} unvisible{/if}"> {if $cart_qties > 0} {if $priceDisplay == 1} {assign var='blockcart_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant} {convertPrice price=$cart->getOrderTotal(false, $blockcart_cart_flag)} {else} {assign var='blockcart_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant} {convertPrice price=$cart->getOrderTotal(true, $blockcart_cart_flag)} {/if} {/if} </span> <span class="ajax_cart_no_product{if $cart_qties > 0} unvisible{/if}">{l s='(empty)' mod='blockcart'}</span> {if $ajax_allowed && isset($blockcart_top) && !$blockcart_top} <span class="block_cart_expand{if !isset($colapseExpandStatus) || (isset($colapseExpandStatus) && $colapseExpandStatus eq 'expanded')} unvisible{/if}"> </span> <span class="block_cart_collapse{if isset($colapseExpandStatus) && $colapseExpandStatus eq 'collapsed'} unvisible{/if}"> </span> {/if} </a> {if !$PS_CATALOG_MODE} <div class="cart_block block exclusive"> <div class="block_content"> <!-- block list of products --> <div class="cart_block_list{if isset($blockcart_top) && !$blockcart_top}{if isset($colapseExpandStatus) && $colapseExpandStatus eq 'expanded' || !$ajax_allowed || !isset($colapseExpandStatus)} expanded{else} collapsed unvisible{/if}{/if}"> {if $products} <dl class="products"> {foreach from=$products item='product' name='myLoop'} {assign var='productId' value=$product.id_product} {assign var='productAttributeId' value=$product.id_product_attribute} <dt data-id="cart_block_product_{$product.id_product}_{if $product.id_product_attribute}{$product.id_product_attribute}{else}0{/if}_{if $product.id_address_delivery}{$product.id_address_delivery}{else}0{/if}" class="{if $smarty.foreach.myLoop.first}first_item{elseif $smarty.foreach.myLoop.last}last_item{else}item{/if}"> <a class="cart-images" href="{$link->getProductLink($product.id_product, $product.link_rewrite, $product.category)|escape:'html':'UTF-8'}" title="{$product.name|escape:'html':'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'cart_default')}" alt="{$product.name|escape:'html':'UTF-8'}" /></a> <div class="cart-info"> <div class="product-name"> <span class="quantity-formated"><span class="quantity">{$product.cart_quantity}</span> x </span><a class="cart_block_product_name" href="{$link->getProductLink($product, $product.link_rewrite, $product.category, null, null, $product.id_shop, $product.id_product_attribute)|escape:'html':'UTF-8'}" title="{$product.name|escape:'html':'UTF-8'}">{$product.name|truncate:13:'...'|escape:'html':'UTF-8'}</a> </div> {if isset($product.attributes_small)} <div class="product-atributes"> <a href="{$link->getProductLink($product, $product.link_rewrite, $product.category, null, null, $product.id_shop, $product.id_product_attribute)|escape:'html':'UTF-8'}" title="{l s='Product detail' mod='blockcart'}">{$product.attributes_small}</a> </div> {/if} <span class="price"> {if !isset($product.is_gift) || !$product.is_gift} {if $priceDisplay == $smarty.const.PS_TAX_EXC}{displayWtPrice p="`$product.total`"}{else}{displayWtPrice p="`$product.total_wt`"}{/if} {else} {l s='Free!' mod='blockcart'} {/if} </span> </div> <span class="remove_link"> {if !isset($customizedDatas.$productId.$productAttributeId) && (!isset($product.is_gift) || !$product.is_gift)} <a class="ajax_cart_block_remove_link" href="{$link->getPageLink('cart', true, NULL, 'delete=1&id_product={$product.id_product}&ipa={$product.id_product_attribute}&id_address_delivery={$product.id_address_delivery}&token={$static_token}', true)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='remove this product from my cart' mod='blockcart'}"> </a> {/if} </span> </dt> {if isset($product.attributes_small)} <dd data-id="cart_block_combination_of_{$product.id_product}{if $product.id_product_attribute}_{$product.id_product_attribute}{/if}_{$product.id_address_delivery|intval}" class="{if $smarty.foreach.myLoop.first}first_item{elseif $smarty.foreach.myLoop.last}last_item{else}item{/if}"> {/if} <!-- Customizable datas --> {if isset($customizedDatas.$productId.$productAttributeId[$product.id_address_delivery])} {if !isset($product.attributes_small)} <dd data-id="cart_block_combination_of_{$product.id_product}_{if $product.id_product_attribute}{$product.id_product_attribute}{else}0{/if}_{if $product.id_address_delivery}{$product.id_address_delivery}{else}0{/if}" class="{if $smarty.foreach.myLoop.first}first_item{elseif $smarty.foreach.myLoop.last}last_item{else}item{/if}"> {/if} <ul class="cart_block_customizations" data-id="customization_{$productId}_{$productAttributeId}"> {foreach from=$customizedDatas.$productId.$productAttributeId[$product.id_address_delivery] key='id_customization' item='customization' name='customizations'} <li name="customization"> <div data-id="deleteCustomizableProduct_{$id_customization|intval}_{$product.id_product|intval}_{$product.id_product_attribute|intval}_{$product.id_address_delivery|intval}" class="deleteCustomizableProduct"> <a class="ajax_cart_block_remove_link" href="{$link->getPageLink("cart", true, NULL, "delete=1&id_product={$product.id_product|intval}&ipa={$product.id_product_attribute|intval}&id_customization={$id_customization}&token={$static_token}", true)|escape:"html":"UTF-8"}" rel="nofollow"> </a> </div> {if isset($customization.datas.$CUSTOMIZE_TEXTFIELD.0)} {$customization.datas.$CUSTOMIZE_TEXTFIELD.0.value|replace:"<br />":" "|truncate:28:'...'|escape:'html':'UTF-8'} {else} {l s='Customization #%d:' sprintf=$id_customization|intval mod='blockcart'} {/if} </li> {/foreach} </ul> {if !isset($product.attributes_small)}</dd>{/if} {/if} {if isset($product.attributes_small)}</dd>{/if} {/foreach} </dl> {/if} <p class="cart_block_no_products{if $products} unvisible{/if}"> {l s='No products' mod='blockcart'} </p> {if $discounts|@count > 0} <table class="vouchers"{if $discounts|@count == 0} style="display:none;"{/if}> {foreach from=$discounts item=discount} {if $discount.value_real > 0} <tr class="bloc_cart_voucher" data-id="bloc_cart_voucher_{$discount.id_discount}"> <td class="quantity">1x</td> <td class="name" title="{$discount.description}"> {$discount.name|truncate:18:'...'|escape:'html':'UTF-8'} </td> <td class="price"> -{if $priceDisplay == 1}{convertPrice price=$discount.value_tax_exc}{else}{convertPrice price=$discount.value_real}{/if} </td> <td class="delete"> {if strlen($discount.code)} <a class="delete_voucher" href="{$link->getPageLink("$order_process", true)}?deleteDiscount={$discount.id_discount}" title="{l s='Delete' mod='blockcart'}" rel="nofollow"> <i class="icon-remove-sign"></i> </a> {/if} </td> </tr> {/if} {/foreach} </table> {/if} <div class="cart-prices"> <div class="cart-prices-line first-line"> <span class="price cart_block_shipping_cost ajax_cart_shipping_cost"> {if $shipping_cost_float == 0} {l s='Free shipping!' mod='blockcart'} {else} {$shipping_cost} {/if} </span> <span> {l s='Shipping' mod='blockcart'} </span> </div> {if $show_wrapping} <div class="cart-prices-line"> {assign var='cart_flag' value='Cart::ONLY_WRAPPING'|constant} <span class="price cart_block_wrapping_cost"> {if $priceDisplay == 1} {convertPrice price=$cart->getOrderTotal(false, $cart_flag)}{else}{convertPrice price=$cart->getOrderTotal(true, $cart_flag)} {/if} </span> <span> {l s='Wrapping' mod='blockcart'} </span> </div> {/if} {if $show_tax && isset($tax_cost)} <div class="cart-prices-line"> <span class="price cart_block_tax_cost ajax_cart_tax_cost">{$tax_cost}</span> <span>{l s='Tax' mod='blockcart'}</span> </div> {/if} <div class="cart-prices-line last-line"> <span class="price cart_block_total ajax_block_cart_total">{$total}</span> <span>{l s='Total' mod='blockcart'}</span> </div> {if $use_taxes && $display_tax_label == 1 && $show_tax} <p> {if $priceDisplay == 0} {l s='Prices are tax included' mod='blockcart'} {elseif $priceDisplay == 1} {l s='Prices are tax excluded' mod='blockcart'} {/if} </p> {/if} </div> <p class="cart-buttons"> <a id="button_order_cart" class="btn btn-default button button-small" href="{$link->getPageLink("$order_process", true)|escape:"html":"UTF-8"}" title="{l s='Check out' mod='blockcart'}" rel="nofollow"> <span> {l s='Check out' mod='blockcart'}<i class="icon-chevron-right right"></i> </span> </a> </p> </div> </div> </div><!-- .cart_block --> {/if} </div> {if isset($blockcart_top) && $blockcart_top} </div> {/if} {counter name=active_overlay assign=active_overlay} {if !$PS_CATALOG_MODE && $active_overlay == 1} <div id="layer_cart" > <div class="clearfix"> <div class="layer_cart_product col-xs-12 col-md-6"> <span class="cross" title="{l s='Close window' mod='blockcart'}"></span> <h2> <i class="icon-ok"></i>{l s='Product successfully added to your shopping cart' mod='blockcart'} </h2> <div class="product-image-container layer_cart_img"> </div> <div class="layer_cart_product_info"> <span id="layer_cart_product_title" class="product-name"></span> <span id="layer_cart_product_attributes"></span> <div> <strong class="dark">{l s='Quantity' mod='blockcart'}</strong> <span id="layer_cart_product_quantity"></span> </div> <div> <strong class="dark">{l s='Total' mod='blockcart'}</strong> <span id="layer_cart_product_price"></span> </div> </div> </div> <div class="layer_cart_cart col-xs-12 col-md-6"> <h2> <!-- Plural Case [both cases are needed because page may be updated in Javascript] --> <span class="ajax_cart_product_txt_s {if $cart_qties < 2} unvisible{/if}"> {l s='There are [1]%d[/1] items in your cart.' mod='blockcart' sprintf=[$cart_qties] tags=['<span class="ajax_cart_quantity">']} </span> <!-- Singular Case [both cases are needed because page may be updated in Javascript] --> <span class="ajax_cart_product_txt {if $cart_qties > 1} unvisible{/if}"> {l s='There is 1 item in your cart.' mod='blockcart'} </span> </h2> <div class="layer_cart_row"> <strong class="dark"> {l s='Total products' mod='blockcart'} {if $display_tax_label} {if $priceDisplay == 1} {l s='(tax excl.)' mod='blockcart'} {else} {l s='(tax incl.)' mod='blockcart'} {/if} {/if} </strong> <span class="ajax_block_products_total"> {if $cart_qties > 0} {convertPrice price=$cart->getOrderTotal(false, Cart::ONLY_PRODUCTS)} {/if} </span> </div> {if $show_wrapping} <div class="layer_cart_row"> <strong class="dark"> {l s='Wrapping' mod='blockcart'} {if $display_tax_label} {if $priceDisplay == 1} {l s='(tax excl.)' mod='blockcart'} {else} {l s='(tax incl.)' mod='blockcart'} {/if} {/if} </strong> <span class="price cart_block_wrapping_cost"> {if $priceDisplay == 1} {convertPrice price=$cart->getOrderTotal(false, Cart::ONLY_WRAPPING)} {else} {convertPrice price=$cart->getOrderTotal(true, Cart::ONLY_WRAPPING)} {/if} </span> </div> {/if} <div class="layer_cart_row"> <strong class="dark"> {l s='Total shipping' mod='blockcart'} {if $display_tax_label}{if $priceDisplay == 1}{l s='(tax excl.)' mod='blockcart'}{else}{l s='(tax incl.)' mod='blockcart'}{/if}{/if} </strong> <span class="ajax_cart_shipping_cost"> {if $shipping_cost_float == 0} {l s='Free shipping!' mod='blockcart'} {else} {$shipping_cost} {/if} </span> </div> {if $show_tax && isset($tax_cost)} <div class="layer_cart_row"> <strong class="dark">{l s='Tax' mod='blockcart'}</strong> <span class="price cart_block_tax_cost ajax_cart_tax_cost">{$tax_cost}</span> </div> {/if} <div class="layer_cart_row"> <strong class="dark"> {l s='Total' mod='blockcart'} {if $display_tax_label} {if $priceDisplay == 1} {l s='(tax excl.)' mod='blockcart'} {else} {l s='(tax incl.)' mod='blockcart'} {/if} {/if} </strong> <span class="ajax_block_cart_total"> {if $cart_qties > 0} {if $priceDisplay == 1} {convertPrice price=$cart->getOrderTotal(false)} {else} {convertPrice price=$cart->getOrderTotal(true)} {/if} {/if} </span> </div> <div class="button-container"> <span class="continue btn btn-default button exclusive-medium" title="{l s='Continue shopping' mod='blockcart'}"> <span> <i class="icon-chevron-left left"></i>{l s='Continue shopping' mod='blockcart'} </span> </span> <a class="btn btn-default button button-medium" href="{$link->getPageLink("$order_process", true)|escape:"html":"UTF-8"}" title="{l s='Proceed to checkout' mod='blockcart'}" rel="nofollow"> <span> {l s='Proceed to checkout' mod='blockcart'}<i class="icon-chevron-right right"></i> </span> </a> </div> </div> </div> <div class="crossseling"></div> </div> <!-- #layer_cart --> <div class="layer_cart_overlay"></div> {/if} {strip} {addJsDef CUSTOMIZE_TEXTFIELD=$CUSTOMIZE_TEXTFIELD} {addJsDef img_dir=$img_dir|escape:'quotes':'UTF-8'} {addJsDef generated_date=$smarty.now|intval} {addJsDef ajax_allowed=$ajax_allowed|boolval} {addJsDefL name=customizationIdMessage}{l s='Customization #' mod='blockcart' js=1}{/addJsDefL} {addJsDefL name=removingLinkText}{l s='remove this product from my cart' mod='blockcart' js=1}{/addJsDefL} {addJsDefL name=freeShippingTranslation}{l s='Free shipping!' mod='blockcart' js=1}{/addJsDefL} {addJsDefL name=freeProductTranslation}{l s='Free!' mod='blockcart' js=1}{/addJsDefL} {addJsDefL name=delete_txt}{l s='Delete' mod='blockcart' js=1}{/addJsDefL} {/strip} <!-- /MODULE Block cart --> <!--/li --> </ul></div> Edited February 23, 2015 by Silvia - Tassen op 8 (see edit history) Link to comment Share on other sites More sharing options...
helldog2004 Posted February 25, 2015 Share Posted February 25, 2015 Well this has nothing to do with your files, but with you css. You can try the following to make it atleat visible and look better, might not be a permanent solution, but hey, it's a start: open global.css file and ADD the following code: .sf-menu > li:nth-child(7) {height: 100%; width: 24.74%; border-right: 0px none; float: left!important;} and ADD also the following: div.col-sm-4:nth-child(1) {width: 100%; height: 100%;} Now open blockcart.css in default-bootstrap/css/modules/blockcart/blockcart.css and go to line 4. and CHANGE the following line: #header .shopping_cart { position: absolute; } To this: #header .shopping_cart { //position: absolute; } And the last ADD this in your global.css file found in default-bootstrap/css/global.css on line 583: .col-sm-4 {position:static!important;} This should make it atleast visible for smaller screens and mobile phones. Let me know if it is working out. Cheers. Link to comment Share on other sites More sharing options...
Silvia - Tassen op 8 Posted February 25, 2015 Author Share Posted February 25, 2015 (edited) Well, it fixes part of the problem, but it creates new problems. There is only one global.css right? Couldn't find a second one. In a mobile version, the shopping cart is better visible, but still not the way I would want it to be. On the website, the center text is now directly next to the left column. On other pages, the center column is overlapping the left column. I've added screenshots. Edited February 25, 2015 by Silvia - Tassen op 8 (see edit history) Link to comment Share on other sites More sharing options...
helldog2004 Posted February 26, 2015 Share Posted February 26, 2015 well, are you sure you entered the correct codes. Because the codes I gave you should not alter these settings in your website. I just tried my codes again, but it does not affect it. Yes there is only one global.css file, but it doesn't realy matter which css file you use, as long as this css file is being called by the website. Cheers, Henk Link to comment Share on other sites More sharing options...
helldog2004 Posted February 26, 2015 Share Posted February 26, 2015 If you enter the codes again "correctly", I can take a look again and make new modifications. Link to comment Share on other sites More sharing options...
Silvia - Tassen op 8 Posted February 26, 2015 Author Share Posted February 26, 2015 (edited) Must have made a mistake yesterday (don't understand what, I've just copy-pasted your text). The columns are in the right place now and the shopping cart stays in place. But it moved to the next line... Edited February 26, 2015 by Silvia - Tassen op 8 (see edit history) Link to comment Share on other sites More sharing options...
helldog2004 Posted February 26, 2015 Share Posted February 26, 2015 yes, that it is moving to the next line is obvious. That is because the screen is to small for the complete bar. Bigger screens will see it on the same line, like my screen. Smaller screens will make it fit by placing it under the the rest of the menu buttons. If you even make it smaller (your screen), you will see that eventually you will have 2 buttons in the second bar. If you make it even more smaller, then the responsive menu will show up. Soooooo. The best thing to do is either make the menu buttons smaller to make them appear on one bar untill responsive menu shows up. Oooooor. Make the responsive bar show up earlier when size of screen is a bit bigger. Link to comment Share on other sites More sharing options...
Silvia - Tassen op 8 Posted March 3, 2015 Author Share Posted March 3, 2015 I've made the menu buttons a bit smaller and for most screens it should appear on one bar now. I have to look into responsive menu to see if I want to make it show up earlier and how to do that. The shopping cart is not looking ok in the mobile version when it contains products. It works for now but if you have a solution for that I would love to hear (as I said in the e-mail I've just send you ) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now