"Info" Button neben Attribut um Erklärung zum Attribut anzuzeigen

Thema wurde von markus_wick, 9. Januar 2020 erstellt.

  1. markus_wick

    markus_wick Erfahrener Benutzer

    Registriert seit:
    10. Oktober 2018
    Beiträge:
    966
    Danke erhalten:
    214
    Danke vergeben:
    153
    Ich hatte in letzter Zeit hier mal einen ähnlichen Tread gesehen, finde ihn aber nicht... Daher neue Frage:

    Ich hätte gerne neben dem Namen eines Attributes einen Link z.B. mit einem Text (Info) oder Bild, der ein Popup öffnet mit Informationen zu dem Attribut (in dem Fall, wie der Ablauf beim Einbau eines Bauteils durch uns wäre). Ähnlich wie es beim Versand und "Ausland abweichend" gelöst ist.

    [​IMG]

    Wie bekomme ich das hin?
     
  2. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    30. Oktober 2015
    Beiträge:
    2.349
    Danke erhalten:
    573
    Danke vergeben:
    506
    @M. Zitzmann hat mal sowas ((Link nur für registrierte Nutzer sichtbar.)) gehabt.
     
  3. markus_wick

    markus_wick Erfahrener Benutzer

    Registriert seit:
    10. Oktober 2018
    Beiträge:
    966
    Danke erhalten:
    214
    Danke vergeben:
    153
    Danke, aber ich dachte eher an selbst einbauen. Wenn möglich und nicht zu kompliziert bastel ich mir die Sachen lieber selbst rein, nicht wegen dem Geld (ist ja nicht viel) sondern um die Kontrolle darüber zu behalten...Falls es Probleme bei Updates gibt, die Modulhersteller (sind ja alles eher kleine Firmen) nicht mehr existiert etc...
     
  4. markus_wick

    markus_wick Erfahrener Benutzer

    Registriert seit:
    10. Oktober 2018
    Beiträge:
    966
    Danke erhalten:
    214
    Danke vergeben:
    153
    #4 markus_wick, 10. Januar 2020
    Zuletzt bearbeitet: 10. Januar 2020
    Die Theme Datei in der das Ganze gebildet wird ist doch die product_info_template_standard.html, oder? Ich finde aber nicht so recht, welcher Block für die Einblendung der Attribute zuständig ist...
    Irgendwas hier:
    Code:
    {block name="product_info_template_standard_sticky_box_properties_selection_form"}
       {$properties_selection_form}
    {/block}
                      
    {block name="product_info_template_standard_sticky_box_module_product_options"}
       {$MODULE_product_options}
    {/block}
                      
    {block name="product_info_template_standard_sticky_box_attribute_images"}
       <div class="attribute-images"></div>
     {/block}
    
    Oder?
    Aber die options sind doch die Eigenschaften, oder? Oder ist das doch das richtige für die Attribute? Und wo wird die Variable gebildet ($MODULE_product_options), falls es die richtige ist?

    Sorry, ich denke hier gerade laut während ich es ausprobiere...
    Wenn ich mir das Ganze im Detail ansehe, ist der erzeugte Code des Shops für die Attributdarstellung.
    Code:
    <fieldset class="attributes">
        <div class="form-group">
        <label class="control-label col-xs-4 ">Einbau:</label>
            <div class="col-xs-8">
                <select class="form-control  js-calculate" name="id[1]" id="id[1]">
                    <option value="1" title="Ohne " selected="selected">Ohne </option>
                    <option value="2" title="Einbaupauschale + 50,00 EUR">Einbaupauschale + 50,00 EUR</option>
                </select>
            </div>
        </div>
    </fieldset>
    Das scheine ich tatsächlich hier zu finden:
    product_info_option_template_table_listing.html

    Da drinnen steht:
    Code:
    {if $options!=''}
        {block name="product_info_option_template_table_listing"}
            <fieldset class="attributes">
                {foreach name=outer item=options_data from=$options}
                    {if $options_data.DATA || $GM_HIDE_OUT_OF_STOCK == 'false'}
                        {block name="product_info_option_template_table_listing_option"}
                            <div class="form-group">
                                {block name="product_info_option_template_table_listing_option_label"}
                                    <label class="control-label col-xs-12">{$options_data.NAME}:</label>
                                {/block}
                                {block name="product_info_option_template_table_listing_option_container"}
                                    <div class="col-xs-12 input-container">
                                        {foreach name=inner key=key_data item=item_data from=$options_data.DATA}
                                            {block name="product_info_option_template_table_listing_option_input"}
                                                <label for="id-{$options_data.ID}-{$key_data}" class="col-sm-12">
                                                    <input type="radio"{if $PRICE_STATUS != 1} class="js-calculate"{/if} id="id-{$options_data.ID}-{$key_data}" name="id[{$options_data.ID}]" value="{$item_data.ID}"{if !$chk} checked="checked" {$chk = true}{else if $smarty.foreach.inner.first} checked="checked"{/if} />
                                                    {$item_data.TEXT}{if $item_data.MODEL}, {$txt.text_model} {$item_data.MODEL}{/if} {if $item_data.PRICE!=''}( {$item_data.PREFIX}{$item_data.PRICE} ){/if}{if $GM_SHOW_STOCK == 'true' && $options_data.NAME != 'downloads'} {$GM_STOCK_TEXT_BEFORE}{$item_data.GM_STOCK}{$GM_STOCK_TEXT_AFTER}{/if}
                                                </label>
                                            {/block}
                                        {/foreach}
                                        {$chk = false}
                                    </div>
                                {/block}
                            </div>
                        {/block}
                    {/if}
                {/foreach}
            </fieldset>
        {/block}
    {/if}
    Was müsste ich denn nun da reinpacken, damit ich (wenig elegant aber für mich evtl. erst mal ausreichend...) "hardcoded" ein in Klammer gesetztes "info" hinter den Attributtitel bekomme, der mit einem Link versehen ist ähnlich dem beim Versand:

    Code:
    <a class="js-open-modal text-small" data-modal-type="iframe" data-modal-settings="{&quot;title&quot;: &quot;Lieferzeit:&quot;}" href="de/popup/Versand-und-Zahlungsbedingungen.html" rel="nofollow">
                            (Ausland abweichend)
                        </a>
     
  5. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    29. November 2019
    Beiträge:
    211
    Danke erhalten:
    78
    Danke vergeben:
    31
    #5 Anonymous, 10. Januar 2020
    Zuletzt bearbeitet: 10. Januar 2020
    Nach deinem Bild zu urteilen ist die dafür zuständige Datei product_info_option_template_product_options_dropdown.html
    Und dann überladen:
    {block name="product_info_option_template_product_options_dropdown_select_label"}
    <label class="control-label col-xs-4 {if 'ENABLE_JS_HYPHENATION'|gm_get_conf == 'true'}hyphenate{/if}">{$options_data.NAME}:</label> <a DeinLink></a>
    {/block}
    Der Link erscheint dann aber bei jeden Produkt mit Artikeleigenschaft-Auswahl.
     
  6. markus_wick

    markus_wick Erfahrener Benutzer

    Registriert seit:
    10. Oktober 2018
    Beiträge:
    966
    Danke erhalten:
    214
    Danke vergeben:
    153
    Prima, danke, auf der Basis werde ich mal weitermachen!