Bolt felület

Regisztráció kibővítése

Regisztráció kibővítése

A cikk eredeti megjelenése: 2013. november 19. – a PrestaShop azóta sokat változott. Az elvek ma is hasznosak lehetnek, de a lépések a mai (8.x, 9.x) verzióknál eltérhetnek. Kérdezz bátran!

Prestashop regisztráció kibővítése egy checkbox-al vagy egy szövegmezővel

Bizonyos esetekben szükséges lehet az eredeti regisztráció kibővítésére pipálós checkbox-okkal vagy új, egyedi szövegmezőkkel ahhoz hogy kellően testre szabott legyen a shopunk:

Prestashop Regisztráció kibővítése
Prestashop Regisztráció kibővítése

 

A regisztráció látványvilágáért a /themes/tetemad/ könyvtárban lévő authentication.tpl felel. Így ide kell beépítenünk mindennemű vizuális elemet: így a checkbox-okat, a szövegmezőket és minden mást amire szükségünk lehet.

Példánkban a harmadik checkbox-ot fogom létrehozni, így a „Különleges ajánlatok partnereinktől” checkbox után a következő kód kerül a tpl-be:

<p class="checkbox" >
<input type="checkbox" name="elsorendelesajandek" id="elsorendelesajandek" value="1" />
<label for="elsorendelesajandek" title="Első rendelésednél kapsz egy ajándék tollat, ha ezt bepipálod">{l s='Első rendelésemnél kérek ajándék tollat'}</label>
</p>

Ha látjuk hogy megjelenik úgy ahogyan mi szeretnénk, akkor menjünk a feldolgozáshoz:
ezért a részért a /controllers/front/AuthController.php felel. Nyissuk meg és a megfelelő helyre tegyük be az alábbi kódot:

$elsorendelesajandek = $_POST['elsorendelesajandek'];

Ezzel „elkaptuk” a checkbox értékét (0 vagy 1) és elmentettük az „$elsorendelesajandek ” változóba. Innentől pedig aztán szabad az út a felhasználásra…

Én például feltöltöm az adatbázisba (előtte létrehoztam a megfelelő helyet számára) ahol aztán a célnak megfelelően lekérdezem a későbbiekben (például rendelés feladása előtt). Aki esetleg nem akar „bajlódni” a szóban forgó php-beli szintaxissal a feltöltést illetően, az nyugodtan megadhatja direkt is:

$kapcsolat = mysql_connect("localhost", "felhasznalo", "jelszo") or die (print "HIBA".mysql_error());
mysql_select_db("adatbazisneve",$kapcsolat) or die (print "HIBA".mysql_error());

$res = mysql_query("UPDATE `adatbazisneve`.`ps_customer` SET `elsorendelesajandek` = '".mysql_real_escape_string($elsorendelesajandek)."' WHERE `ps_customer`.`id_customer` ='".mysql_real_escape_string($customer->id)."'") or die (print "HIBA".mysql_error());

Új szövegmező hozzáadása ugyanezen elven működik.

Eladásra fel! 🙂

Puizl Attila

PrestaShop fejlesztő · Hivatalos PrestaShop Nagykövet

17 éve készítek, fejlesztek és tartok karban PrestaShop webáruházakat. Több száz hazai és külföldi webshop viseli a kézjegyem, és 2010 óta segítek a magyar PrestaShop közösségben.

Bemutatkozás és ügyfélvélemények →

Szólj hozzá!

Az e-mail címed nem jelenik meg. A hozzászólások jóváhagyás után válnak láthatóvá. Részletek: Adatkezelési tájékoztató.

This site uses Akismet to reduce spam. Learn how your comment data is processed.