Nickless Posted August 17, 2015 Share Posted August 17, 2015 (edited) Hallo, Het komt regelmatig bij ons voor dat klanten vergeten hun huisnummer in te voeren bij hun bestelling. Dit veroorzaakt nogal wat (onnodig) werk omdat ze dan benaderd moeten worden met de vraag wat het correcte huisnummer is. In enkele gevallen is het zelfs voorgekomen dat het emailadres van de klant ook niet klopte waardoor er geen manier was om achter het huisnummer te komen. Het zou daarom prettig zijn als het huisnummer toegevoegd zou kunnen worden als verplicht veld. Heb met Googlen wel een aantal omslachtige manieren gevonden waarbij er veel code gewijzigd moest worden. Uit de reacties maakte ik op dat dit niet altijd werkte. Buiten het feit dat ik het onbegrijpelijk vind dat dit blijkbaar nog niet standaard in de BO van Prestashop is te wijzigen, vroeg ik me af of iemand hier een simpele oplossing weet om dit voor elkaar te krijgen. Liefst zonder betaalde module, maar als het niet anders kan zijn tips mbt modules ook welkom! (Prestashop 1.6.0.8) Bedankt! -Dave Edited August 17, 2015 by Nickless (see edit history) Link to comment Share on other sites More sharing options...
hennyw Posted August 17, 2015 Share Posted August 17, 2015 Het eenvoudigste is denk ik het volgende: Je hebt bij de klant 2 adres regels. Adres en Adres(2) Maak hiervan Straat en Huisnummer. Maar het requierd fields en je bent klaar, denk ik. Link to comment Share on other sites More sharing options...
Nickless Posted August 17, 2015 Author Share Posted August 17, 2015 Bedankt voor je reactie. Ik neem aan dat je de optie bedoelt in Localization > Countries? Naar die optie heb ik gekeken. Bij mij is echter maar 1 adres zichtbaar in de FO. Ik vermoed dat dit in mijn template zo is ingesteld. Ik zal eens het standaard template activeren om te kijken of het inderdaad aan het template is. Link to comment Share on other sites More sharing options...
hennyw Posted August 17, 2015 Share Posted August 17, 2015 Ok ik ben uitgegaan van mijn template...... Misschien kun je er 1 bijmaken/kopiëren. Ik heb ze gevonden in de template en dan de address.tpl Je kunt dit bewerken met Notepad. Hopelijk heb je hier iets aan? Link to comment Share on other sites More sharing options...
Nickless Posted August 17, 2015 Author Share Posted August 17, 2015 Thanks, ga het uitproberen! Link to comment Share on other sites More sharing options...
Nickless Posted August 19, 2015 Author Share Posted August 19, 2015 Kom er net achter dat de adres 2 regel wel zichtbaar is bij het checkout proces waarbij ik een account aanmaak. Heb vervolgens adres 2 in de translations bestanden hernoemd naar huisnummer. Ik ben er inmiddels ook achter hoe ik dit een verplicht veld kan maken (classes/Address.php) Maar.... het probleem zit hem bij de guest checkout. De tweede adres regel is daar niet zichtbaar. En als ik nu een test uitvoer en een bestelling wil plaatsen als guest dan krijg ik de melding dat ik het huisnummer moet invullen. Maar die is dus niet zichtbaar bij de guest checkout Dus adres 2 weer niet verplicht gemaakt. Als er iemand is die weet hoe ik de 2e adres regel ook in de guest checkout zichtbaar kan maken dan hou ik me aanbevolen! Link to comment Share on other sites More sharing options...
hennyw Posted August 19, 2015 Share Posted August 19, 2015 sorry, hier houd mijn kennis op. ik zie alleen dat het in jou theme, albedo, zit. ik denk dat je moet zoeken naar quick-order. hoop dat je hier iets mee kan? Link to comment Share on other sites More sharing options...
Nickless Posted August 19, 2015 Author Share Posted August 19, 2015 (edited) Ok, met behulp van een ander topic (https://www.prestashop.com/forums/topic/288682-address-2-missing-from-guest-checkout/?p=2071545) is het me (zo goed als) gelukt. Aangezien de code in dit topic niet helemaal overeenkwam met de mijne zal ik volledigheidshalve opsommen hoe ik het gedaan heb: Ik heb mijn BO overigens in het Engels staan omdat ik dit handiger vind dus ik houd ook die benamingen aan. In de BO, Localization > translations. Bij Front Office translations, <jou theme>, Nederlands, de vertaling van Address (Line 2) aangepast en er daar 'huisnummer' van gemaakt. Dit moet je in ieder geval doen bij 'order-opc-new-account' om dit zichtbaar te krijgen tijden guest checkout. Je kan hem ook nog aanpassen in 'addresses' en 'authentication' maar dit maakt niets uit voor de FO. Om de adres regel zichtbaar te maken bij de guest checkout moet er code aangepast worden. Maak eerst een nieuwe class aan in /theme/css/global.css. De naam kan je zelf verzinnen, ik gebruik hier voor de duidelijkheid nieuwe_class. .nieuwe_class {display:inherit!important;} Vervolgens moet het bestand /theme/order-opc-new-account.tpl aangepast worden. Zoek in dit bestand naar de string {elseif $field_name eq "address2"} De regel daaronder moet aangepast worden, hier moet de eerder gemaakte class aan toegevoegd worden zodat hij er zo uitziet <p class="text is_customer_param nieuwe_class"> Deze regel komt 2 keer voor in het bestand. Pas hem daar ook aan zodat de regel ook zichtbaar wordt op de factuur. Om de regel ook een verplicht invoerveld te maken moet het bestand /classes/Addresses.php worden aangepast. Kijk in de fields van id_address en zorg ervoor dat address2 er hetzelfde uitziet als address1, zo dus: 'address1' => array('type' => self::TYPE_STRING, 'validate' => 'isAddress', 'required' => true, 'size' => 128), 'address2' => array('type' => self::TYPE_STRING, 'validate' => 'isAddress', 'required' => true,'size' => 128), Als alles goed is gegaan is Adres 2 nu zichtbaar bij de guest checkout onder de naam 'huisnummer' en is tevens een verplicht veld. Het enige wat ik nog uit moet zoeken is hoe ik de de * zichtbaar krijg zodat het ook voor de bezoeker duidelijk is dat dit een verplicht veld is. Mocht iemand tips hebben.... Edited August 19, 2015 by Nickless (see edit history) Link to comment Share on other sites More sharing options...
Nickless Posted August 19, 2015 Author Share Posted August 19, 2015 sorry, hier houd mijn kennis op. ik zie alleen dat het in jou theme, albedo, zit. ik denk dat je moet zoeken naar quick-order. hoop dat je hier iets mee kan? Is dus al gelukt! Maar bedankt voor het meedenken!! (was overigens voor een andere webshop dan degene in mn signature, maar bleek dus niet aan het theme te liggen ) 1 Link to comment Share on other sites More sharing options...
hennyw Posted August 19, 2015 Share Posted August 19, 2015 wat ik zie is dat bij adres regel 2 na true, geen spatie staat en bij regel 1 wel. zou hier het verschil in kunnen zitten? Link to comment Share on other sites More sharing options...
Nickless Posted August 19, 2015 Author Share Posted August 19, 2015 Was eerder een copy-paste foutje van mij denk ik... Link to comment Share on other sites More sharing options...
alfredos Posted January 27, 2016 Share Posted January 27, 2016 Ok, met behulp van een ander topic (https://www.prestashop.com/forums/topic/288682-address-2-missing-from-guest-checkout/?p=2071545) is het me (zo goed als) gelukt. Aangezien de code in dit topic niet helemaal overeenkwam met de mijne zal ik volledigheidshalve opsommen hoe ik het gedaan heb: Ik heb mijn BO overigens in het Engels staan omdat ik dit handiger vind dus ik houd ook die benamingen aan. In de BO, Localization > translations. Bij Front Office translations, <jou theme>, Nederlands, de vertaling van Address (Line 2) aangepast en er daar 'huisnummer' van gemaakt. Dit moet je in ieder geval doen bij 'order-opc-new-account' om dit zichtbaar te krijgen tijden guest checkout. Je kan hem ook nog aanpassen in 'addresses' en 'authentication' maar dit maakt niets uit voor de FO. Om de adres regel zichtbaar te maken bij de guest checkout moet er code aangepast worden. Maak eerst een nieuwe class aan in /theme/css/global.css. De naam kan je zelf verzinnen, ik gebruik hier voor de duidelijkheid nieuwe_class. .nieuwe_class {display:inherit!important;} Vervolgens moet het bestand /theme/order-opc-new-account.tpl aangepast worden. Zoek in dit bestand naar de string {elseif $field_name eq "address2"} De regel daaronder moet aangepast worden, hier moet de eerder gemaakte class aan toegevoegd worden zodat hij er zo uitziet <p class="text is_customer_param nieuwe_class"> Deze regel komt 2 keer voor in het bestand. Pas hem daar ook aan zodat de regel ook zichtbaar wordt op de factuur. Om de regel ook een verplicht invoerveld te maken moet het bestand /classes/Addresses.php worden aangepast. Kijk in de fields van id_address en zorg ervoor dat address2 er hetzelfde uitziet als address1, zo dus: 'address1' => array('type' => self::TYPE_STRING, 'validate' => 'isAddress', 'required' => true, 'size' => 128), 'address2' => array('type' => self::TYPE_STRING, 'validate' => 'isAddress', 'required' => true,'size' => 128), Als alles goed is gegaan is Adres 2 nu zichtbaar bij de guest checkout onder de naam 'huisnummer' en is tevens een verplicht veld. Het enige wat ik nog uit moet zoeken is hoe ik de de * zichtbaar krijg zodat het ook voor de bezoeker duidelijk is dat dit een verplicht veld is. Mocht iemand tips hebben.... Ik weet niet of het nog relevant is voor je maar om een * zichtbaar te krijgen moet je de regels onder : <p class="text is_customer_param nieuwe_class"> wijzigen in: <div class="required text form-group"> <label for="address2">{l s='Address (Line 2)'} <sup>*</sup></label> <input type="text" class="text form-control validate" name="address2" id="address2" data-validate="isAddress" value="{if isset($guestInformations) && isset($guestInformations.address2) && isset($guestInformations) && isset($guestInformations.address2) && $guestInformations.address2}{$guestInformations.address2}{/if}" /> </div> Het gaat er in ieder geval om dat je: <sup>*</sup> in je label code hebt staan. Hopelijk ben jij of iemand anders er in de toekomst mee geholpen. 1 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