Shopware Knowledgebase

Dieser Artikel ist noch nicht für Shopware 3.5 geprüft bzw. freigegeben.
Shopware Labs

Der Bereich Shopware Labs ist die Plattform für alle Entwickler. Hier findet man technische Dokumentationen und zahlreiche Tipps und Tricks rund um das Thema Programmieren. In dieser Rubrik stellen außerdem die Entwickler der shopware AG neue und experimentelle Lösungsansätze vor. Neue Funktionen, die in dieser Rubrik bereitgestellt werden, sind teilweise auch für zukünftige Releases geplant. Die Funktionen können dann ohne Programmierkenntnisse zukünftig direkt im Shopware Backend konfiguriert werden oder werden über Plugins bereitgestellt. Informationen über neue, geplante Funktionen finden Sie in unserer Roadmap.

Bitte beachten Sie, dass die hier bereitgestellten Lösungsansätze nicht offiziell supportet werden und nur eingebaut werden sollten, sofern Sie über das entsprechende, technische Wissen verfügen.

Kann ich aus Geburtsdatum ein Pflichtfeld bei der Registrierung machen?

0 Kommentare
ab Version:3.0.3

Vorwort

Mit dieser Anpassung können Sie im ersten Registrierungs-Step, die Felder zum Geburtsdatum, in Pflichtfelder umwandeln.

Hierzu ist die Änderung eines Viewports, sowie die Anpassung einer Templatedatei notwendig.

Hinweis: Legen Sie von den betroffenden Dateien Sicherungen an, um diese evtl. zu einem späteren Zeitpunkt wiederherstellen zu können.

Viewport: s_registerFC.php

Diesen Viewport finden Sie auf Ihrem Server unter /engine/core/class/viewports/

Ändern Sie die folgenden Werte

 
"birthyear"=>array("required"=>0),
"birthmonth"=>array("required"=>0),
"birthday"=>array("required"=>0)
 

in

 
"birthyear"=>array("required"=>1),
"birthmonth"=>array("required"=>1),
"birthday"=>array("required"=>1)
 

ab. Hierdurch werden die Felder über den Viewport zu Pflichtfelder!

Template: register_step_1.tpl

Diese Datei finden Sie im Ordner templates/0/de/html/register/

Erklärung der Änderung

Durch diese Änderung werden die Pflichtfelder rot markiert, falls diese nicht ausgefüllt wurden. Hierzu ist z.B. folgende Erweiterung eingeflossen: class="birthmonth {if $sErrorFlag.birthmonth}instyle_error{/if}

Damit Shopware prüfen kann, ob ein Wert eingetragen wurde, muss die vorausgewählte Standard-Option mit Value erweitert werden. z.B. value="0"

Der untere Code-Abschnitt kann i. d. R. so übernommen werden.

Template-Anpassung

Ersetzen Sie folgenden Abschnitt

 
<div id="birthdate" {if $_POST.skipLogin}style="display:none"{/if}>
<p class="none">
	<label for="birthdate" class="normal">{* sSnippet: birthdate *}{$sConfig.sSnippets.sRegisterbirthdate}</label>
	<select name="birthday" style="width:60px">
	<option>--</option>	
	{section name="birthdate" start=1 loop=32 step=1}
		<option value="{$smarty.section.birthdate.index}" {if $smarty.section.birthdate.index==$_POST.birthday}selected{/if}>{$smarty.section.birthdate.index}</option>
	{/section}
	</select>
 
	<select name="birthmonth" style="width:60px">
	<option>-</option>	
	{section name="birthmonth" start=1 loop=13 step=1}
		<option value="{$smarty.section.birthmonth.index}" {if $smarty.section.birthmonth.index==$_POST.birthmonth}selected{/if}>{$smarty.section.birthmonth.index}</option>
	{/section}
	</select>
 
	<select name="birthyear" style="width:60px">
	<option>----</option>	
	{section name="birthyear" loop=2000 max=100 step=-1}
		<option value="{$smarty.section.birthyear.index}" {if $smarty.section.birthyear.index==$_POST.birthyear}selected{/if}>{$smarty.section.birthyear.index}</option>
	{/section}
	</select>
 
</p>
</div>
 

mit

 
<div id="birthdate" {if $_POST.skipLogin}style="display:none"{/if}>
<p class="none">
	<label for="birthdate" class="normal">{* sSnippet: birthdate *}{$sConfig.sSnippets.sRegisterbirthdate}</label>
	<select name="birthday" style="width:60px" class="birthday {if $sErrorFlag.birthday}instyle_error{/if}">
	<option value="0">--</option>	
	{section name="birthdate" start=1 loop=32 step=1}
		<option value="{$smarty.section.birthdate.index}" {if $smarty.section.birthdate.index==$_POST.birthday}selected{/if}>{$smarty.section.birthdate.index}</option>
	{/section}
	</select>
 
	<select name="birthmonth" style="width:60px" class="birthmonth {if $sErrorFlag.birthmonth}instyle_error{/if}">
	<option value="0">-</option>	
	{section name="birthmonth" start=1 loop=13 step=1}
		<option value="{$smarty.section.birthmonth.index}" {if $smarty.section.birthmonth.index==$_POST.birthmonth}selected{/if}>{$smarty.section.birthmonth.index}</option>
	{/section}
	</select>
 
	<select name="birthyear" style="width:60px" class="birthyear {if $sErrorFlag.birthyear}instyle_error{/if}">
	<option value="0">----</option>	
	{section name="birthyear" loop=2000 max=100 step=-1}
		<option value="{$smarty.section.birthyear.index}" {if $smarty.section.birthyear.index==$_POST.birthyear}selected{/if}>{$smarty.section.birthyear.index}</option>
	{/section}
	</select>
 
</p>
</div>
 

Artikel-PDF erstellen

Artikel bewerten

Waren diese Informationen hilfreich? Ja Nein


Kommentare:

Artikel kommentieren


Die mit einem * markierten Felder sind Pflichtfelder.

Weitere interessante Artikel:

Bezeichnung:
Rating:
Klicks:
Datum:

Bestell-Nr.: SW1247

Lieferzeit ca. 5 Tage

€ 1,00

Preise inkl. gesetzlicher
MwSt. zzgl. Versandkosten*

€ 1,00

Preise inkl. gesetzlicher
MwSt. + Versandkosten*

Kategorien: