Právě je 28 bře 2024 10:29

Všechny časy jsou v UTC + 1 hodina




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 4 ] 
Autor Zpráva
 Předmět příspěvku: PrestaShop 1.6 - Znepřístupnění přidání produktu do košíku, pokud není ručně zvolen atribut
PříspěvekNapsal: 18 úno 2021 09:55 
C4 zákazník

Registrován:
16 dub 2020 16:34
Příspěvky:
44
Dobrý den,

Jak prosím docílít toho, aby před přidáním do košíku musel býti ručně zvolen daný atribut z výběru?

Jde mi o to aby tam automaticky neskákalo /třeba u oblečení od nejmenší velikost, ale aby byla podmínka ručně zvoleno zákazníkem ?

Ted to mám tak že je tam automaticky otevírací seznam od nejmenší po nejvetší velikost, ale primárně je tam nejmenší.. Jde o to aby pokaždé zákazník to musel zvolit ručně, jakou velikost chce a až potom by ho to teprve pustilo přidat do košíku..

Příklad je třeba zde, kde naskočí ihned nejmenší velikost.. Stává se často že si to zákazník neuvědomí a odklikne to a potom vznikají problémy a náklady s výměnou..

https://www.shopsilver.cz/detske-mikiny ... ikiny.html

Děkuji moc a hezký den přeji...

Shopsilver.cz


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop 1.6 - Znepřístupnění přidání produktu do košíku, pokud není ručně zvolen atribut
PříspěvekNapsal: 25 úno 2021 16:09 
C4 podpora
C4 podpora

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

bohužel se mi nepodařilo najít žádný vhodný, takže jedinou možností je úprava zdrojového kódu. Postup bude následující:

  1. V souboru /themes/default-bootstrap/js/product.js najděte tyto řádky (okolo řádku 347):
    Kód:
    <select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="form-control attribute_select no-print">
       {foreach from=$group.attributes key=id_attribute item=group_attribute}
          <option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) && $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if} title="{$group_attribute|escape:'html':'UTF-8'}">{$group_attribute|escape:'html':'UTF-8'}</option>
       {/foreach}
    </select>

    a nahraďte:
    Kód:
    <select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="form-control attribute_select no-print">
       <option value="0">{l s ='>>Prosím zvolte variantu'}</option>
       {foreach from=$group.attributes key=id_attribute item=group_attribute}
          <option value="{$id_attribute|intval}" title="{$group_attribute|escape:'html':'UTF-8'}">{$group_attribute|escape:'html':'UTF-8'}</option>
       {/foreach}
    </select>

    Tím do rozbalovacího menu s atributy přidáte novou položku s textem, že je nutné zvolit variantu. Text v uvozovkách '>>Prosím zvolte variantu' si případně rovnou změňte na nějaký vlastní. A nebo ho pak také půjde upravit přímo v překladech obchodu (Fron Office).


  2. V souboru /themes/default-bootstrap/js/product.js najděte tyto řádky (okolo řádku 518):
    Kód:
    function updateDisplay()
    {
    a hned za ně přidejte na nový řádek:
    Kód:
    if ($(".attribute_select").val() == 0) {
       $('#pQuantityAvailable:visible').hide('slow');   
       $('#availability_statut:visible').hide('slow');
       $('#quantity_wanted_p:visible').hide('slow');
       $('#add_to_cart:visible').fadeOut(600);
       return false;
    }

    Tato úprava zajistí skrytí pole pro zadání počtu produktu, tlačítka pro přidání do košíku a případně dalších polí, stejně jako při nedostupné/neexistující kombinaci. Když budete chtít pole pro zadání počtu ponechat stále zobrazené, tak stačí v novém kódu smazat řádek:
    Kód:
    $('#quantity_wanted_p:visible').hide('slow');


Pokud se Vám úprava neprojeví, tak promažte mezipaměť aplikace ("Nástroje > Výkon > Vyčistit mezipaměť") a internetového prohlížeče.

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


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop 1.6 - Znepřístupnění přidání produktu do košíku, pokud není ručně zvolen atribut
PříspěvekNapsal: 25 úno 2021 21:28 
C4 zákazník

Registrován:
16 dub 2020 16:34
Příspěvky:
44
Dobrý den,

děkuji za návod, ale v tom js. souboru tento kod bohužel nelze najít.. Jediné co tam je tomu se podobající, tak je tohle..
--------------------------------------------------------------------------------------------------------------------------------------
count++;

// add class 'selected' to the selected color
$('#color_' + attributesCombinations[a]['id_attribute']).addClass('selected').parent().addClass('selected');
$('input:radio[value=' + attributesCombinations[a]['id_attribute'] + ']').prop('checked', true);
$('input[type=hidden][name=group_' + attributesCombinations[a]['id_attribute_group'] + ']').val(attributesCombinations[a]['id_attribute']);
$('select[name=group_' + attributesCombinations[a]['id_attribute_group'] + ']').val(attributesCombinations[a]['id_attribute']);
if (!!$.prototype.uniform)
$.uniform.update('input[name=group_' + attributesCombinations[a]['id_attribute_group'] + '], select[name=group_' + attributesCombinations[a]['id_attribute_group'] + ']');

}
// find combination and select corresponding thumbs
if (count)
{
if (firstTime)
{
firstTime = false;
findCombination();
}
original_url = url;
return true;
}
// no combination found = removing attributes from url
else
window.location.replace(url.substring(0, url.indexOf('#')));
}
}
return false;
-------------------------------------------------------------------------------------------------------------------------------------------------
Radši jsem nic ještě neměnil.. :-)

Děkuji za pomoc.

Hezký večer..

Shopsilver


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop 1.6 - Znepřístupnění přidání produktu do košíku, pokud není ručně zvolen atribut
PříspěvekNapsal: 26 úno 2021 09:36 
C4 podpora
C4 podpora

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

zkuste v obsahu souboru vyhledat třeba jen část textu "function updateDisplay" nebo "updateDisplay". Postup je ověřen pro verzi 1.6.1.24, takže v jiných 1.6 verzích se kód může nacházet na jiném řádku, ale určitě tam musí být.

_________________
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ů: 4 ] 

Všechny časy jsou v UTC + 1 hodina


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