xt_checkout_addresses - Adressen im Checkout erstellen

Das Plugin xt_checkout_addresses vereinfacht für den Kunden das Anlegen neuer Adressen im Checkout.

Der Kunde kann neue Versand-Adressen anlegen, ohne den Checkout zu verlassen.

Das Plugin Checkout-Adressen "xt_checkout_addresses" ist kostenpflichtig und kann im xt:Commerce Store bezogen werden.

Installation / Konfiguration / Anpassungen

  1. Installieren und aktivieren Sie das Plugin. Legen Sie fest, für welche Mandanten das Plugin verwendet werden soll.
  2. Öffnen Sie die Datei templates/<IHR_TEMPLATE>/xtCore/pages/checkout/subpage_shipping.html
  3. Finden Sie folgenden Block

    XT 5  xt_responsive

    <div class="well shipping-address address">
    <p class="headline-underline clearfix">
    {txt key=TEXT_SHIPPING_ADDRESS}
    {if $shipping_address.allow_change == true && $shipping_address.address_class=='shipping'}
    <a title="{txt key=TEXT_EDIT}" class="btn btn-xs btn-primary pull-right" href="{link page='customer' paction='edit_address' params='adType=shipping&abID' params_value=$shipping_address.address_book_id conn=SSL}">
    <span class="glyphicon glyphicon-pencil"></span>
    <span class="sr-only">{txt key=TEXT_EDIT}</span>
    </a>
    {/if}
    </p>
    {if $shipping_address.customers_company}<p>{$shipping_address.customers_company}</p>{/if}
    <p>{$shipping_address.customers_firstname} {$shipping_address.customers_lastname}</p>
    <p>{$shipping_address.customers_street_address}</p>
    {if $shipping_address.customers_suburb}</p>{$shipping_address.customers_suburb}</p>{/if}
    <p>{$shipping_address.customers_postcode} {$shipping_address.customers_city}</p>
    <p>{$shipping_address.customers_country}</p>
    <p><br /></p>
    {if $shipping_address.allow_change == true}
    {if $address_data|@count > 2}
    {form type=form role="form" name=shipping_address action='dynamic' link_params='page_action=shipping' method=post conn=SSL}
    <div class="form-group">
    <label for="address_data">{txt key=TEXT_SELECT_SHIPPING_ADDRESS}</label>
    {form type=select class="form-control" id="address_data" name=adID value=$address_data default=$smarty.session.customer->customer_shipping_address.address_book_id params='onchange="this.form.submit();" data-style="btn-secondary"'}
    </div>
    {form type=hidden name=adType value=shipping}
    {form type=hidden name=action value=select_address}
    {form type=formend}
    {/if}
    {if $add_new_address eq 1}
    <!--<p>{txt key=TEXT_NEW_SHIPPING_ADDRESS}</p>-->
    <a class="btn btn-primary" href="{link page='customer' paction='edit_address' params='adType=shipping' conn=SSL}">
    <span class="glyphicon glyphicon-plus"></span>
    {txt key=BUTTON_ADD_ADDRESS}
    </a>
    {/if}
    {/if}
    </div>

    XT 4  xt_grid

    <div class="column xt-grid-4">
        <div class="box">
            <p class="headline-underline">{txt key=TEXT_SHIPPING_ADDRESS}</p>
            {if $shipping_address.allow_change == true && $shipping_address.address_class=='shipping'}
            <p class="right"><a class="highlight" href="{link page='customer' paction='edit_address' params='adType=shipping&abID' params_value=$shipping_address.address_book_id conn=SSL}">{txt key=TEXT_EDIT}</a></p>
            {/if}
            {if $shipping_address.customers_company}<p>{$shipping_address.customers_company}</p>{/if}
            <p>{$shipping_address.customers_firstname} {$shipping_address.customers_lastname}</p>
            <p>{$shipping_address.customers_street_address}</p>
            {if $shipping_address.customers_suburb}</p>{$shipping_address.customers_suburb}</p>{/if}
            <p>{$shipping_address.customers_postcode} {$shipping_address.customers_city}</p>
            <p>{$shipping_address.customers_country}</p>
            <p><br /></p>
            {if $shipping_address.allow_change == true}
            {txt key=TEXT_SELECT_SHIPPING_ADDRESS}
            {form type=form name=shipping_address action='dynamic' link_params='page_action=shipping' method=post conn=SSL}
            {form type=select name=adID value=$address_data params='onchange="this.form.submit();"'}
            {form type=hidden name=adType value=shipping}
            {form type=hidden name=action value=select_address}
            {form type=formend}
            {if $add_new_address eq 1}
            <p>{txt key=TEXT_NEW_SHIPPING_ADDRESS}</p>
            <p class="right"><a class="highlight" href="{link page='customer' paction='edit_address' params='adType=shipping' conn=SSL}">{txt key=BUTTON_ADD_ADDRESS}</a></p>
            {/if}
            {/if}
        </div><!-- .box -->
    </div><!-- .column .xt-grid4 -->

  4. Ersetzen Sie den gefundenen Block durch

    XT 5  xt_responsive
    <div class="well shipping-address address">
        {box name=cha_shipping_address}
    </div>


    XT 4  xt_grid

    <div class="column xt-grid-4">
        {box name=cha_shipping_address}
    </div><!-- .column .xt-grid4 -->

In der Standartauslieferung des Plugins wird unterhalb des Formulars kein Speichern-Button angezeigt und die Auswertung der Adressdaten erfolgt bei Klick auf den Button 'Weiter' des Versandformulars.

Bei Verwendung des Plugins xt_field_format_and_validation empfehlen wir den Speichern-Button einzublenden, da dadurch die Adressfelder noch vor dem Senden validiert werden können.

Zur Aktivierung des Speichern-Buttons bearbeiten Sie die Datei plugins/xt_checkout_addresses/templates/boxes/box_cha_shipping_address.html und entfernen den Kommentar um


<!-- p class="right">{css_button text=$smarty.const.BUTTON_SAVE type='form'}</p -->