Inkton Posted March 30, 2017 Share Posted March 30, 2017 Jak to zrobić? Link to comment Share on other sites More sharing options...
0 endriu107 Posted March 30, 2017 Share Posted March 30, 2017 Możesz np. zrobić warunek który sprawdzi cenę i ukryje przycisk dodania do koszyka. Link to comment Share on other sites More sharing options...
0 Inkton Posted March 31, 2017 Author Share Posted March 31, 2017 Możesz np. zrobić warunek który sprawdzi cenę i ukryje przycisk dodania do koszyka. Ok, a jak to zrobić? Jak wygląda ten warunek i w jaki plik go wkleić i gdzie dokładnie? Link to comment Share on other sites More sharing options...
0 endriu107 Posted March 31, 2017 Share Posted March 31, 2017 Warunek w różnych plikach może być inny chociaż bardzo podobny, w wszystkich plikach które wyświetlają przycisk dodaj do koszyka w miejscu tych przycisków. Na pewno będą to pliki product.tpl i product-list.tpl być może pliki jakichś modułów, a warunek ma być np. na zasadzie: if product price == 0. Link to comment Share on other sites More sharing options...
0 Inkton Posted March 31, 2017 Author Share Posted March 31, 2017 Warunek w różnych plikach może być inny chociaż bardzo podobny, w wszystkich plikach które wyświetlają przycisk dodaj do koszyka w miejscu tych przycisków. Na pewno będą to pliki product.tpl i product-list.tpl być może pliki jakichś modułów, a warunek ma być np. na zasadzie: if product price == 0. Niestety nic mi to nie mówi. Tyle to ja wiem, że to mniej więcej tak ma wyglądać, ale niestety tylko tyle. Musiałbym wiedzieć do jakiego pliku i co dokładnie wpisać. Link to comment Share on other sites More sharing options...
0 Inkton Posted April 11, 2017 Author Share Posted April 11, 2017 Niestety nic mi to nie mówi. Tyle to ja wiem, że to mniej więcej tak ma wyglądać, ale niestety tylko tyle. Musiałbym wiedzieć do jakiego pliku i co dokładnie wpisać. Czy ktoś może podpowiedzieć mi w tej kwestii? Link to comment Share on other sites More sharing options...
0 endriu107 Posted April 11, 2017 Share Posted April 11, 2017 Podpowiedź już masz pokaż co i gdzie próbujesz to będziemy nakierowywać. Link to comment Share on other sites More sharing options...
0 koening Posted April 11, 2017 Share Posted April 11, 2017 (edited) Nie prościej ukryć je żeby nie były wogóle widoczne? Wtedy prostym zapytaniem w SQL można to zrobić oraz dodać je do wyzwalacza np on UPDATE. Edited April 11, 2017 by koening (see edit history) Link to comment Share on other sites More sharing options...
0 Inkton Posted April 11, 2017 Author Share Posted April 11, 2017 Podpowiedź już masz pokaż co i gdzie próbujesz to będziemy nakierowywać. sklep.inkton.pl Nie dla wszystkich produktów mam ustalone ceny i chiałbym uniknąć sytuacji gdzie ktos to zamowi. Ciagle pracuje nad sklepem i to na wszelki wypadek chciałbym umiescic Link to comment Share on other sites More sharing options...
0 Inkton Posted April 11, 2017 Author Share Posted April 11, 2017 Nie prościej ukryć je żeby nie były wogóle widoczne? Wtedy prostym zapytaniem w SQL można to zrobić oraz dodać je do wyzwalacza np on UPDATE. No mozna ale jak wtedy wychwycic produkty bez cen żeby w końcu je dodać i żeby produkty się wyświetlały Link to comment Share on other sites More sharing options...
0 endriu107 Posted April 11, 2017 Share Posted April 11, 2017 sklep.inkton.pl Nie dla wszystkich produktów mam ustalone ceny i chiałbym uniknąć sytuacji gdzie ktos to zamowi. Ciagle pracuje nad sklepem i to na wszelki wypadek chciałbym umiescic Nie miałem na myśli adresu strony tylko kod, pokaż co robisz, to co próbowałeś ale Ci nie działa. Link to comment Share on other sites More sharing options...
0 koening Posted April 11, 2017 Share Posted April 11, 2017 (edited) UPDATE ps_product_shop SET active=0 WHERE id_product IN (SELECT id_product FROM ps_product WHERE price=0); UPDATE ps_product_shop SET active=1 WHERE id_product IN (SELECT id_product FROM ps_product WHERE price>0); To jest rozwiązanie oparte na bazie danych. Wystarczy wykonać takie zapytanie SQL i przedmioty których cena jest równa 0 zostaną ukryte a przedmioty których cena jest wieksza niż 0 bedą widoczne w sklepie. Przed wykonywaniem jakichkolwiek działań na bazie danych zalecam wykonanie kopii zapasowej To jest najprostsze i najszybsze rozwiązanie ale na pewno nie najlepsze Edited April 11, 2017 by koening (see edit history) Link to comment Share on other sites More sharing options...
0 Piotr K. Posted April 11, 2017 Share Posted April 11, 2017 Najprościej to skorzystać z gotowych mechanizmów skryptu - przełączyć produkt w tryb katalogu (ewentualnie można wyłączyć też pokazywanie ceny). Link to comment Share on other sites More sharing options...
0 koening Posted April 11, 2017 Share Posted April 11, 2017 Ale niestety nie da się takich zmian zautomatyzować jeśli się nie mylę i gdy na sklepie jest kilkaset takich produktów to troszkę trzeba czasu poświęcić i za każdym razem gdy taki produkt się pojawi trzeba go edytować a jak się o tym zapomni to klient może miec produkt za darmo. Najlepsze rozwiązanie to pewnie edycja pliku produkt.tpl i product-list.tpl Link to comment Share on other sites More sharing options...
0 Piotr K. Posted April 11, 2017 Share Posted April 11, 2017 Równie dobrze można to zrobić przez import csv który dla zwykłych osób jest prostszy do zrozumienia, albo przygotować odpowiednie zapytanie które wyłączy zamawianie, pokazywanie ceny itp. zamiast całkiem wyłączać produkt, bo to chyba nie było intencją pytającego No i czytać opcje dostępne w panelu zamiast szukać co zmieniać w kodzie szablonu Link to comment Share on other sites More sharing options...
0 koening Posted April 11, 2017 Share Posted April 11, 2017 W sumie całkowite wyłączanie produktu też nie jest zbyt dobrym pomysłem jeśli chodzi o seo, lepiej żeby produkt był widoczny w sklepie jednak nie możliwy do zakupu. Link to comment Share on other sites More sharing options...
0 Piotr K. Posted April 11, 2017 Share Posted April 11, 2017 I właśnie do tego służą opcje o których wspomniałem ( Link to comment Share on other sites More sharing options...
0 Inkton Posted April 13, 2017 Author Share Posted April 13, 2017 I właśnie do tego służą opcje o których wspomniałem ( O jakich konkretnie opcjach mówisz? Link to comment Share on other sites More sharing options...
0 Inkton Posted April 13, 2017 Author Share Posted April 13, 2017 W sumie całkowite wyłączanie produktu też nie jest zbyt dobrym pomysłem jeśli chodzi o seo, lepiej żeby produkt był widoczny w sklepie jednak nie możliwy do zakupu. No i właśnie o to mi chodzi. Mógłbym wyłączyć sklep i nadal nad nim pracować, ale chodzi o to żeby google już sobie pracowało i indeksowało towary. Na niektóre produkty nie mam cen i pewnie nie będe miał jeszcze przez jakiś czas dlatego chciałbym uniemożliwić zakup z ceną 0. Sklep nie jest gotowy ale chcę żeby się indeksował dlatego potrzebuje takiego rozwiązania. Co do zapytania dla bazy danych to już dla mnie za wysoki poziom. Nigdy tego nie robiłem i nie chcę zrobić kuku w mojej firmie. Jestem z tych co stara się ogarniać nowe rzeczy i kombinuje, ale tutaj trochę się boję. Wg instrukcji zrobię wszystko ale nie wiem nawet gdzie takie zapytanie umieścić. Z kopią pewnie bym sobie poradził. Link to comment Share on other sites More sharing options...
0 Inkton Posted April 13, 2017 Author Share Posted April 13, 2017 Nie miałem na myśli adresu strony tylko kod, pokaż co robisz, to co próbowałeś ale Ci nie działa. Niestety nie próbowałem jeszcze nic, bo nie wiem jak się do tego zabrać Link to comment Share on other sites More sharing options...
0 Piotr K. Posted April 13, 2017 Share Posted April 13, 2017 O jakich konkretnie opcjach mówisz? Na stronie głównej edycji produktu (informacja) masz Opcje: - sprzedaż (tryb katalogu jeśli nieaktywne) odznacz to. Masowo to już importem CSV albo odpowiednim zapytaniem do bazy. Link to comment Share on other sites More sharing options...
0 Inkton Posted April 13, 2017 Author Share Posted April 13, 2017 Na stronie głównej edycji produktu (informacja) masz Opcje: - sprzedaż (tryb katalogu jeśli nieaktywne) odznacz to. Masowo to już importem CSV albo odpowiednim zapytaniem do bazy. To nie takie rozwiązanie jakiego potrzebuje. Zrobiłem tak jak pisałeś i wyłączyła się opcja zamówienia produktu, ale miał cenę i miał stan, także to w ogóle nie takie rozwiązanie Link to comment Share on other sites More sharing options...
0 Piotr K. Posted April 13, 2017 Share Posted April 13, 2017 Przecież następna opcja to pokaż cenę - wystarczy też wyłączyć. Co ze stanem chcesz zrobić? W preferencje -> produkty możesz globalnie wyłączyć jego pokazywanie. Może opisz co dokładnie potrzebujesz, bo ja już nie wiem. Link to comment Share on other sites More sharing options...
0 Inkton Posted April 14, 2017 Author Share Posted April 14, 2017 Chcę wyeksportować produkty z subiekta do sklepuNie wszystkie produkty mają stany i ceny, ale mimo wszystko chce je sprzedawać bo ściągne je na następny dzień. Wyłączyłem pokazywanie stanów magazynowych oraz włączyłem możliwość zamawiania produktów, których nie ma na stanie.Chciałbym tylko wyłączyć możliwość zamawiania produktów z ceną 0 zł w taki sposób żeby one były widoczne, ale żeby przycisk dodaj do koszyka był niewidoczny, ewentualnie zeby te produkty znikały chociaż z powodów indeksowania witryny chciałbym żeby wisiały. Link to comment Share on other sites More sharing options...
0 koening Posted April 14, 2017 Share Posted April 14, 2017 (edited) Żeby wyłączyć przycisk dodaj do koszyka kiedy cena produktu jest równa 0 musisz wykonać następujące kroki. W pliku product.tpl dokonujesz następujących zmian: Tą linie(u mnie 389) <div{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || (isset($restricted_country_mode) && $restricted_country_mode) || $PS_CATALOG_MODE } class="unvisible"{/if}> zamieniasz na: <div{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || (isset($restricted_country_mode) && $restricted_country_mode) || $PS_CATALOG_MODE || ($productPrice <= 0)} class="unvisible"{/if}> Teraz przycisk dodaj do koszyka powinien być niewidoczny gdy cena produktu jest równa lub mniejsza od 0 na stronie produktu. Teraz wystarczy jeszcze edytować plik product-list.tpl Linię (u mnie 161) <a class="button ajax_add_to_cart_button btn btn-default" href="{$link->getPageLink('cart', true, NULL, $smarty.capture.default, false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product-attribute="{$product.id_product_attribute|intval}" data-id-product="{$product.id_product|intval}" data-minimal_quantity="{if isset($product.product_attribute_minimal_quantity) && $product.product_attribute_minimal_quantity >= 1}{$product.product_attribute_minimal_quantity|intval}{else}{$product.minimal_quantity|intval}{/if}"> zamieniasz na: <a class="button ajax_add_to_cart_button btn btn-default {if $product.price <= 0 } hidden{/if}" href="{$link->getPageLink('cart', true, NULL, $smarty.capture.default, false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product-attribute="{$product.id_product_attribute|intval}" data-id-product="{$product.id_product|intval}" data-minimal_quantity="{if isset($product.product_attribute_minimal_quantity) && $product.product_attribute_minimal_quantity >= 1}{$product.product_attribute_minimal_quantity|intval}{else}{$product.minimal_quantity|intval}{/if}"> Po wprowadzeniu zmian wyczyść cache i ponownie skompiluj pliki szablonu. Edited April 14, 2017 by koening (see edit history) Link to comment Share on other sites More sharing options...
0 Piotr K. Posted April 14, 2017 Share Posted April 14, 2017 @koening te + kilka innych plików wymaga zmian jeśli wszędzie ma być ukryte dodawanie do koszyka (np. products-comparison.tpl + niektóre moduły). Chciałbym tylko wyłączyć możliwość zamawiania produktów z ceną 0 zł w taki sposób żeby one były widoczne, ale żeby przycisk dodaj do koszyka był niewidoczny No i właśnie przełączniki, które podałem dokładnie to robią. Możesz też przygotować odpowiednie pliki csv i je importować, albo załatwić sprawę zapytaniami do bazy typu: UPDATE ps_product SET available_for_order = 0 WHERE price = 0; UPDATE ps_product_shop SET available_for_order = 0 WHERE price = 0; pokazywanie cen to UPDATE ps_product SET show_price = 0 WHERE price = 0; UPDATE ps_product_shop SET show_price = 0 WHERE price = 0; Nie rozumiem dlaczego to rozwiązanie nie spełnia Twoich oczekiwań skoro tylko miało wyłączyć możliwość zamawiania. Link to comment Share on other sites More sharing options...
0 Inkton Posted April 19, 2017 Author Share Posted April 19, 2017 @koening te + kilka innych plików wymaga zmian jeśli wszędzie ma być ukryte dodawanie do koszyka (np. products-comparison.tpl + niektóre moduły). No i właśnie przełączniki, które podałem dokładnie to robią. Możesz też przygotować odpowiednie pliki csv i je importować, albo załatwić sprawę zapytaniami do bazy typu: UPDATE ps_product SET available_for_order = 0 WHERE price = 0; UPDATE ps_product_shop SET available_for_order = 0 WHERE price = 0; pokazywanie cen to UPDATE ps_product SET show_price = 0 WHERE price = 0; UPDATE ps_product_shop SET show_price = 0 WHERE price = 0; Nie rozumiem dlaczego to rozwiązanie nie spełnia Twoich oczekiwań skoro tylko miało wyłączyć możliwość zamawiania. Nie mówię, że nie rozwiązywało. Chodziło o to że to są polecenia do bazy danych a w tym jestem zielony i nie chciałem nic zepsuć. Link to comment Share on other sites More sharing options...
0 Inkton Posted April 19, 2017 Author Share Posted April 19, 2017 Żeby wyłączyć przycisk dodaj do koszyka kiedy cena produktu jest równa 0 musisz wykonać następujące kroki. W pliku product.tpl dokonujesz następujących zmian: Tą linie(u mnie 389) <div{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || (isset($restricted_country_mode) && $restricted_country_mode) || $PS_CATALOG_MODE } class="unvisible"{/if}> zamieniasz na: <div{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || (isset($restricted_country_mode) && $restricted_country_mode) || $PS_CATALOG_MODE || ($productPrice <= 0)} class="unvisible"{/if}> Teraz przycisk dodaj do koszyka powinien być niewidoczny gdy cena produktu jest równa lub mniejsza od 0 na stronie produktu. Teraz wystarczy jeszcze edytować plik product-list.tpl Linię (u mnie 161) <a class="button ajax_add_to_cart_button btn btn-default" href="{$link->getPageLink('cart', true, NULL, $smarty.capture.default, false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product-attribute="{$product.id_product_attribute|intval}" data-id-product="{$product.id_product|intval}" data-minimal_quantity="{if isset($product.product_attribute_minimal_quantity) && $product.product_attribute_minimal_quantity >= 1}{$product.product_attribute_minimal_quantity|intval}{else}{$product.minimal_quantity|intval}{/if}"> zamieniasz na: <a class="button ajax_add_to_cart_button btn btn-default {if $product.price <= 0 } hidden{/if}" href="{$link->getPageLink('cart', true, NULL, $smarty.capture.default, false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product-attribute="{$product.id_product_attribute|intval}" data-id-product="{$product.id_product|intval}" data-minimal_quantity="{if isset($product.product_attribute_minimal_quantity) && $product.product_attribute_minimal_quantity >= 1}{$product.product_attribute_minimal_quantity|intval}{else}{$product.minimal_quantity|intval}{/if}"> Po wprowadzeniu zmian wyczyść cache i ponownie skompiluj pliki szablonu. Pierwsza część zrobiona czyli zniknął przycisk z poziomu towaru, teraz przycisk z listy towarów a tego nie mogę zrobić bo nie operuje na podstawowym szablonie i nie mogę znaleźć tego co mi wysłałeś. Z pierwszym też był problem ale po jakimś czasie się udało za to z product list jest już gorzej. U mnie wygląda to tak. {* * 2007-2014 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Academic Free License (AFL 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/afl-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/afl-3.0.php Academic Free License (AFL 3.0) * International Registered Trademark & Property of PrestaShop SA *} {if isset($products) && $products} {*define numbers of product per line in other page for desktop*} {if $page_name !='index' && $page_name !='product'} {assign var='nbItemsPerLine' value=3} {assign var='nbItemsPerLineTablet' value=2} {assign var='nbItemsPerLineMobile' value=3} {else} {assign var='nbItemsPerLine' value=4} {assign var='nbItemsPerLineTablet' value=3} {assign var='nbItemsPerLineMobile' value=2} {/if} {*define numbers of product per line in other page for tablet*} {assign var='nbLi' value=$products|@count} {math equation="nbLi/nbItemsPerLine" nbLi=$nbLi nbItemsPerLine=$nbItemsPerLine assign=nbLines} {math equation="nbLi/nbItemsPerLineTablet" nbLi=$nbLi nbItemsPerLineTablet=$nbItemsPerLineTablet assign=nbLinesTablet} <!-- Products list --> <ul{if isset($id) && $id} id="{$id}"{/if} class="product_list grid row{if isset($class) && $class} {$class}{/if}{if isset($active) && $active == 1} active{/if}"> {foreach from=$products item=product name=products} {math equation="(total%perLine)" total=$smarty.foreach.products.total perLine=$nbItemsPerLine assign=totModulo} {math equation="(total%perLineT)" total=$smarty.foreach.products.total perLineT=$nbItemsPerLineTablet assign=totModuloTablet} {math equation="(total%perLineT)" total=$smarty.foreach.products.total perLineT=$nbItemsPerLineMobile assign=totModuloMobile} {if $totModulo == 0}{assign var='totModulo' value=$nbItemsPerLine}{/if} {if $totModuloTablet == 0}{assign var='totModuloTablet' value=$nbItemsPerLineTablet}{/if} {if $totModuloMobile == 0}{assign var='totModuloMobile' value=$nbItemsPerLineMobile}{/if} <li class="ajax_block_product{if $page_name == 'index' || $page_name == 'product'} col-xs-12 col-sm-4 col-md-3{else} col-xs-12 col-sm-6 col-md-4{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLine == 0} last-in-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLine == 1} first-in-line{/if}{if $smarty.foreach.products.iteration > ($smarty.foreach.products.total - $totModulo)} last-line{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLineTablet == 0} last-item-of-tablet-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLineTablet == 1} first-item-of-tablet-line{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLineMobile == 0} last-item-of-mobile-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLineMobile == 1} first-item-of-mobile-line{/if}{if $smarty.foreach.products.iteration > ($smarty.foreach.products.total - $totModuloMobile)} last-mobile-line{/if}"> <div class="product-container" itemscope itemtype="http://schema.org/Product"> <div class="left-block"> <div class="product-image-container"> <a class="product_img_link" href="{$product.link|escape:'html':'UTF-8'}" title="{$product.name|escape:'html':'UTF-8'}" itemprop="url"> <img class="replace-2x img-responsive" src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home_default')|escape:'html':'UTF-8'}" alt="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" title="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} itemprop="image" /> </a> {if isset($quick_view) && $quick_view} <a class="quick-view" href="{$product.link|escape:'html':'UTF-8'}" rel="{$product.link|escape:'html':'UTF-8'}"> <span>{l s='Quick view'}</span> </a> {/if} {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))} <div class="content_price" itemprop="offers" itemscope itemtype="http://schema.org/Offer"> {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)} <span itemprop="price" class="price product-price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if} </span> <meta itemprop="priceCurrency" content="{$priceDisplay}" /> {if isset($product.specific_prices) && $product.specific_prices && isset($product.specific_prices.reduction) && $product.specific_prices.reduction > 0} <span class="old-price product-price"> {displayWtPrice p=$product.price_without_reduction} </span> {if $product.specific_prices.reduction_type == 'percentage'} <span class="price-percent-reduction">-{$product.specific_prices.reduction * 100}%</span> {/if} {/if} {/if} </div> {/if} {if isset($product.new) && $product.new == 1} <span class="new-box"> <span class="new-label">{l s='New'}</span> </span> {/if} {if isset($product.on_sale) && $product.on_sale && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE} <span class="sale-box"> <span class="sale-label">{l s='Sale!'}</span> </span> {/if} </div> </div> <div class="right-block"> <h5 itemprop="name"> {if isset($product.pack_quantity) && $product.pack_quantity}{$product.pack_quantity|intval|cat:' x '}{/if} <a class="product-name" href="{$product.link|escape:'html':'UTF-8'}" title="{$product.name|escape:'html':'UTF-8'}" itemprop="url" > {$product.name|truncate:45:'...'|escape:'html':'UTF-8'} </a> </h5> {hook h='displayProductListReviews' product=$product} <p class="product-desc" itemprop="description"> {$product.description_short|strip_tags:'UTF-8'|truncate:360:'...'} </p> {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))} <div itemprop="offers" itemscope itemtype="http://schema.org/Offer" class="content_price"> {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)} <span itemprop="price" class="price product-price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{/if} </span> <meta itemprop="priceCurrency" content="{$priceDisplay}" /> {if isset($product.specific_prices) && $product.specific_prices && isset($product.specific_prices.reduction) && $product.specific_prices.reduction > 0} <span class="old-price product-price"> {displayWtPrice p=$product.price_without_reduction} </span> {if $product.specific_prices.reduction_type == 'percentage'} <span class="price-percent-reduction">-{$product.specific_prices.reduction * 100}%</span> {/if} {/if} {/if} </div> {/if} <div class="button-container"> {if ($product.id_product_attribute == 0 || (isset($add_prod_display) && ($add_prod_display == 1))) && $product.available_for_order && !isset($restricted_country_mode) && $product.minimal_quantity <= 1 && $product.customizable != 2 && !$PS_CATALOG_MODE} {if ($product.allow_oosp || $product.quantity > 0)} {if isset($static_token)} <a class="button ajax_add_to_cart_button btn btn-default" href="{$link->getPageLink('cart',false, NULL, "add=1&id_product={$product.id_product|intval}&token={$static_token}", false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product="{$product.id_product|intval}"> <span>{l s='Add to cart'}</span> </a> {else} <a class="button ajax_add_to_cart_button btn btn-default" href="{$link->getPageLink('cart',false, NULL, 'add=1&id_product={$product.id_product|intval}', false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product="{$product.id_product|intval}"> <span>{l s='Add to cart'}</span> </a> {/if} {else} <span class="button ajax_add_to_cart_button btn btn-default disabled"> <span>{l s='Add to cart'}</span> </span> {/if} {/if} <a itemprop="url" class="button lnk_view btn btn-default" href="{$product.link|escape:'html':'UTF-8'}" title="{l s='View'}"> <span>{l s='More'}</span> </a> </div> {if isset($product.color_list)} <div class="color-list-container">{$product.color_list} </div> {/if} <div class="product-flags"> {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))} {if isset($product.online_only) && $product.online_only} <span class="online_only">{l s='Online only'}</span> {/if} {/if} {if isset($product.on_sale) && $product.on_sale && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE} {elseif isset($product.reduction) && $product.reduction && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE} <span class="discount">{l s='Reduced price!'}</span> {/if} </div> {if (!$PS_CATALOG_MODE && $PS_STOCK_MANAGEMENT && ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))} {if isset($product.available_for_order) && $product.available_for_order && !isset($restricted_country_mode)} <span itemprop="offers" itemscope itemtype="http://schema.org/Offer" class="availability"> {if ($product.allow_oosp || $product.quantity > 0)} <span class="{if $product.quantity <= 0}out-of-stock{else}available-now{/if}"> <link itemprop="availability" href="http://schema.org/InStock" />{if $product.quantity <= 0}{if $product.allow_oosp}{$product.available_later}{else}{l s='Out of stock'}{/if}{else}{if isset($product.available_now) && $product.available_now}{$product.available_now}{else}{l s='In Stock'}{/if}{/if} </span> {elseif (isset($product.quantity_all_versions) && $product.quantity_all_versions > 0)} <span class="available-dif"> <link itemprop="availability" href="http://schema.org/LimitedAvailability" />{l s='Product available with different options'} </span> {else} <span class="out-of-stock"> <link itemprop="availability" href="http://schema.org/OutOfStock" />{l s='Out of stock'} </span> {/if} </span> {/if} {/if} </div> {if $page_name != 'index'} <div class="functional-buttons clearfix"> {hook h='displayProductListFunctionalButtons' product=$product} {if isset($comparator_max_item) && $comparator_max_item} <div class="compare"> <a class="add_to_compare" href="{$product.link|escape:'html':'UTF-8'}" data-id-product="{$product.id_product}">{l s='Add to Compare'}</a> </div> {/if} </div> {/if} </div><!-- .product-container> --> </li> {/foreach} </ul> {addJsDefL name=min_item}{l s='Please select at least one product' js=1}{/addJsDefL} {addJsDefL name=max_item}{l s='You cannot add more than %d product(s) to the product comparison' sprintf=$comparator_max_item js=1}{/addJsDefL} {addJsDef comparator_max_item=$comparator_max_item} {addJsDef comparedProductsIds=$compared_products} {/if} Link to comment Share on other sites More sharing options...
0 e_com Posted April 20, 2017 Share Posted April 20, 2017 Wszędzie gdzie masz klasę ajax_add_to_cart_button dodaj po prostu {if $product.price <= 0} hidden{/if} Link to comment Share on other sites More sharing options...
0 Piotr K. Posted April 28, 2017 Share Posted April 28, 2017 No i musisz pamiętać, że samo ukrycie guzika nie sprawi, że tego produktu nie da się zamówić Link to comment Share on other sites More sharing options...
Question
Inkton
Jak to zrobić?
Link to comment
Share on other sites
29 answers to this question
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