leopardleopard MemberComments: 173 Received thanks: 7 Member since: January 2014 edited August 2015
Hallo,

ich möchte meinen Online-Shop gerne ausschließlich für Privatkunden anbieten, sprich keine B2B-Option.

Daher möchte gerne bei der Registrierung das erste Feld "Ich bin: Privatkunde ODER Firma" entfernen. Dies konnte ich auch schon erfolgreich anstellen indem ich unter /templates/_default/frontend/register/personal_fieldset.tpl folgenden Code wie folgt auskommentiert habe:
{* Customer type *}
    {*block name='frontend_register_personal_fieldset_customer_type'}
        {if $form_data.sValidation}
            <input type="hidden" name="register[personal][sValidation]" value="{$form_data.sValidation|escape}"/>
        {else}
            <div class="form-group">
                <label for="register_personal_customer_type" class="{$FormLabelSize} control-label">{s name='RegisterPersonalLabelType'}{/s}*:</label>

                <div class="{$FormInputSize}">
                    <select id="register_personal_customer_type" name="register[personal][customer_type]" class="form-control">
                        <option value="private"{if $form_data.customer_type eq "private"} selected="selected"{/if}>{s name='RegisterPersonalLabelPrivate'}{/s}</option>
                        <!-- <option value="business"{if $form_data.customer_type eq "business" or $form_data.company or $form_data.sValidation} selected="selected"{/if}>{s name='RegisterPersonalLabelBusiness'}{/s}</option> -->
                    </select>
                </div>
            </div>
        {/if}
    {/block*}
Nun habe ich jedoch das Problem, dass mir das Feld "Firma", welches sonst nur bei der Auswahl "Firma" bei "Ich bin:" eingeblendet wird, dauerhaft angezeigt wird. Bislang konnte ich nicht herausfinden wo ich den Bereich "Firma" in der Registrierung mit den dazu gehörigen Feldern "Name, Abteilung, Umsatzsteuer-ID" entfernen kann.

Vielleicht gibt es auch eine ganz andere Lösung für dieses Problem ohne Löschen/Auskommentieren von Code? Kann man irgendwo "Privatperson" als Standard bzw. einzige Auswahl setzen? Bin für jede Hilfe dankbar.

Comments

  • simplybecausesimplybecause MemberComments: 1693 Received thanks: 234 Member since: January 2012
    Setz das <div> einfach auf display:none und es wird nichts mehr angezeigt.
    Da Privatkunde vorausgewählt ist, kommt das Firmenfeld nicht zum Vorschein.
    Thanked by 1billyb52
  • leopardleopard MemberComments: 173 Received thanks: 7 Member since: January 2014
    Setz das <div> einfach auf display:none und es wird nichts mehr angezeigt.
    Da Privatkunde vorausgewählt ist, kommt das Firmenfeld nicht zum Vorschein.
    Hi… nur um sicher zu gehen. Könntest Du mir sagen, welches <div> aus meinem Code ich genau auf display:none setzen soll? Danke im Voraus
  • produktrampeproduktrampe MemberComments: 8 Received thanks: 3 Member since: January 2014
    <div class="form-group" style="display:none;">
    Thanked by 2billyb52 leopard
  • leopardleopard MemberComments: 173 Received thanks: 7 Member since: January 2014
    <div class="form-group" style="display:none;">
    Vielen Dank. Hat wunderbar geklappt!
  • billyb52billyb52 MemberComments: 219 Received thanks: 31 Member since: March 2013
    Hallo leopard,
    könntest Du bitte so nett sein und den kompletten Code angeben.
    Bei mir funktioniert es leider nicht :-(

    Dankeschön
  • leopardleopard MemberComments: 173 Received thanks: 7 Member since: January 2014
    Hallo leopard,
    könntest Du bitte so nett sein und den kompletten Code angeben.
    Bei mir funktioniert es leider nicht :-(

    Dankeschön
    Natürlich… der komplette Code sieht bei mir wie folgt aus:
        {* Customer type *}
        {block name='frontend_register_personal_fieldset_customer_type'}
            {if $form_data.sValidation}
                <input type="hidden" name="register[personal][sValidation]" value="{$form_data.sValidation|escape}"/>
            {else}
                <div class="form-group" style="display: none;">
                    <label for="register_personal_customer_type" class="{$FormLabelSize} control-label">{s name='RegisterPersonalLabelType'}{/s}*:</label>
    
                    <div class="{$FormInputSize}">
                        <select id="register_personal_customer_type" name="register[personal][customer_type]" class="form-control">
                            <option value="private"{if $form_data.customer_type eq "private"} selected="selected"{/if}>{s name='RegisterPersonalLabelPrivate'}{/s}</option>
                            <option value="business"{if $form_data.customer_type eq "business" or $form_data.company or $form_data.sValidation} selected="selected"{/if}>{s name='RegisterPersonalLabelBusiness'}{/s}</option>
                        </select>
                    </div>
                </div>
            {/if}
        {/block}
    
    Thanked by 1billyb52
  • billyb52billyb52 MemberComments: 219 Received thanks: 31 Member since: March 2013
    Dankeschön :-) hat funktioniert!
  • zecczecc MemberComments: 4 Received thanks: 0 Member since: March 2014
    Wie kann man denn diese Auswahl um einige Punkte erweitern? Hat da jemand Erfahrung?
  • leopardleopard MemberComments: 173 Received thanks: 7 Member since: January 2014
    Schau dir mal dieses Plugin an:
    http://store.shopware.de/sonstiges/regi ... nfigurator

    Damit kannst du bis zu maximal sechs weitere Formularfelder mit einer eigenen Bezeichnung dem Registrierungsformular hinzufügen.

    Ich selbst habe es noch nicht getestet. Aber eventuell ist es was für dich.
    Thanked by 1zecc
  • FlorianBFlorianB MemberComments: 52 Received thanks: 0 Member since: March 2012
    zecc wrote:
    Wie kann man denn diese Auswahl um einige Punkte erweitern? Hat da jemand Erfahrung?
    Hey,
    das Plugin existiert, bzw. geht der Link leider nicht mehr! Gibt es sonst eine andere Möglichkeit, die Registrierung um ein paar Punkte zu erweitern?

    Gruß,
    Florian
  • runde8runde8 MemberComments: 26 Received thanks: 2 Member since: June 2013
    Auch wenn schon gelöst, lässt sich via CSS auch über das "Child-Attribut" lösen
    #register_personal_customer_type > option:nth-child(3) {
        display: none;
    }
    
    Wobei:
    1 = "Ich bin *"
    2 = Privatkunde
    3 = Firma

    steht!
  • DoroMDoroM MemberComments: 5 Received thanks: 2 edited July 2016 Member since: June 2016
    Hallo,

    ich möchte meinen Online-Shop gerne ausschließlich für Privatkunden anbieten, sprich keine B2B-Option.

    Daher möchte gerne bei der Registrierung das erste Feld "Ich bin: Privatkunde ODER Firma" entfernen. Dies konnte ich auch schon erfolgreich anstellen indem ich unter /templates/_default/frontend/register/personal_fieldset.tpl folgenden Code wie folgt auskommentiert habe:
    {* Customer type *}
        {*block name='frontend_register_personal_fieldset_customer_type'}
            {if $form_data.sValidation}
                
            {else}
                
                    
    
                    
                        
                            {s name='RegisterPersonalLabelPrivate'}{/s}
                            
                        
                    
    {/if} {/block*}
    Nun habe ich jedoch das Problem, dass mir das Feld "Firma", welches sonst nur bei der Auswahl "Firma" bei "Ich bin:" eingeblendet wird, dauerhaft angezeigt wird. Bislang konnte ich nicht herausfinden wo ich den Bereich "Firma" in der Registrierung mit den dazu gehörigen Feldern "Name, Abteilung, Umsatzsteuer-ID" entfernen kann.


    Vielleicht gibt es auch eine ganz andere Lösung für dieses Problem ohne Löschen/Auskommentieren von Code? Kann man irgendwo "Privatperson" als Standard bzw. einzige Auswahl setzen? Bin für jede Hilfe dankbar.

     

    Damit der Code auch nicht im  DOM gerendert wird, sollte man die Bedingung

    {if {config name=showCompanySelectField}} {/if}

    um das div 

    <div class="panel register--company is--hidden"></div>

    (die Anzeige ist leider etwas fehlerhaft)

    So lässt sich das Feld "Ich bin" im Backend trotzdem jederzeit wieder einblenden und das Firmenfeld wird sichtbar. (Nur Ausblenden ist grundsätzlich keine schöne Variante)

  • GizmodoGizmodo MemberComments: 11 Received thanks: 1 edited June 2017 Member since: June 2017

    Es wäre schön wenn man dieses Feld auch im Backend einstellen bzw. aktivieren/deaktivieren könnte :-)

  • sonicsonic MemberComments: 2114 Received thanks: 590 Member since: January 2014

    Es wäre schön, wenn Leute die aktuelle Version benutzen würden und in die Doku gucken - oder zumindest mal im Backend stöbern - denn inzwischen sind wir bei SW 5.2.26 - und da geht es im Backen. Zur Doku geht es "oben" über "Resourcen"

    image

    Thanked by 2Nadja mmnvie
  • ReaRea MemberComments: 23 Received thanks: 0 Member since: October 2017

    Ebenfalls schön wäre dann auch wenn man hierbei das ganze auch umdrehen könnte und auch z.b. die Auswahl zwischen Firma und Endkunde wählbar machen könnte und auch das dementsprechende Form angezeigt wird. So müsste man sich nicht extra bei Betrieb eines B2B Shop das teure Business Essential Plugin kaufen... ;)

    LG

  • ReaRea MemberComments: 23 Received thanks: 0 Member since: October 2017

    Ebenfalls schön wäre dann auch wenn man hierbei das ganze auch umdrehen könnte und auch z.b. die Auswahl zwischen Firma und Endkunde wählbar machen könnte und auch das dementsprechende Form angezeigt wird. So müsste man sich nicht extra bei Betrieb eines B2B Shop das teure Business Essential Plugin kaufen... ;)

    LG

    ***
    Ach ja, und für alle die sparen wollen und das B2B-Form standardmässig anzeigen lassen wollen, der danke (ich schliess mich an) dem schlauen Community Mitglied mit seiner Lösung:
    ....in der "personal_fieldset.tpl" einfach die Abfrage {if $form_data.sValidation} durch einsetzen eines "!" negieren in {if !$form_data.sValidation}. Damit wird die Privatkundeneinstellung umgangen und immer die Felder für eine Registrierung als Firma angezeigt.

  • artepartep MemberComments: 3591 Received thanks: 588 edited November 2018 Member since: July 2010

    Noch viel besser wäre es, wenn man verschiedene Registrierungsseiten für B2B und B2C hätte. Oben die Auswahl Privatkunde/Geschäftskunde und dann das entsprechende Registrierungsformular, so wie es große Onlineshops auch haben. Oder wie bei Conrad Checkbox Privat oder Geschäft. Im Backend einstellbar ob einzeln oder beides angezeigt werden soll. Dann braucht man nicht im Themplate eigenständig rumzufummeln. Es könnte alles so einfach sein. Ich wünsch mir das zu Weihnachten.  Smile

    Thanked by 1kulli
  • sonicsonic MemberComments: 2114 Received thanks: 590 Member since: January 2014

    Dauerhaft Firma:

    {extends file="parent:frontend/register/personal_fieldset.tpl"}
    
    {block name='frontend_register_personal_fieldset_customer_type'}
    {if $form_data.sValidation}
    	{$smarty.block.parent} 
    {else}
    	<div class="register--customertype">
    	<div class="select-field is--hidden">
    	<select id="register_personal_customer_type" name="register[personal][customer_type]">
    		<option value="business" selected="selected">business</option>
        </select>
    	</div>
    	</div>
    {/if}
    {/block}

     

    Thanked by 2Rea Tom W.
  • ReaRea MemberComments: 23 Received thanks: 0 Member since: October 2017

    Noch viel besser wäre es, wenn man verschiedene Registrierungsseiten für B2B und B2C hätte. Oben die Auswahl Privatkunde/Geschäftskunde und dann das entsprechende Registrierungsformular, so wie es große Onlineshops auch haben. Oder wie bei Conrad Checkbox Privat oder Geschäft. Im Backend einstellbar ob einzeln oder beides angezeigt werden soll. Dann braucht man nicht im Themplate eigenständig rumzufummeln. Es könnte alles so einfach sein. Ich wünsch mir das zu Weihnachten.  Smile

     

    Wünsch ich mir auch :)

Sign In or Register to comment.