Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:

Autor Thema: MODUL: CSS Produkt- & Attributlagerampel v1.0 CE (ab Shopversion 2.x.x.x)  (Gelesen 10978 mal)

Offline awids

  • Experte
  • *****
  • Beiträge: 2.523
  • Geschlecht: Männlich
    • Teile Beitrag
    • awids Onlineshop
Anbei die in diesem Thread (MODUL: Artikel und Attribut Lagerampel für Shopversion 1.06) mehrfach besprochene und von noRiddle mit super Anleitungen vorgestellte CSS Produkt- und Attribut-Lagerampel als System-Modul mit Smarty-Plugin (vielen Dank an web28 für die Unterstützung) in einer Community Edition.

Da dieses Modul mit dem 1.06er-Modul nichts gemein hat und auch nicht darauf basiert, habe ich mich entschieden, hierfür einen neuen Beitrag zu öffnen. Das macht es u. a. beim Support leichter, das richtige Modul zu supporten.

Folgende Lagerampeln wurden in diesem Modul implementiert:

Produktinfo / Detailseite

[ Für Gäste sind keine Dateianhänge sichtbar ]

Produktlisting

[ Für Gäste sind keine Dateianhänge sichtbar ]

Attribute auf Detailseite

[ Für Gäste sind keine Dateianhänge sichtbar ]

Das ganze lässt sich in den System Modulen dann administrieren/steuern:

[ Für Gäste sind keine Dateianhänge sichtbar ]

Mein besonderer Dank gilt an dieser Stelle nochmals noRiddle und web28 für die Mithilfe durch tolle Vorlagen.

Viel Spaß damit.

Lieben Gruß

Alex

[EDIT Tomcraft 20.06.2017: Modul aktualisiert.]

Linkback: https://www.modified-shop.org/forum/index.php?topic=37371.0

Offline longchuan

  • Viel Schreiber
  • *****
  • Beiträge: 633
  • Geschlecht: Männlich
    • Teile Beitrag
    • https://www.kubotanshop.at
Hallo ich glaube das in der Anleitung ein fehler ist:
# JAVASCRIPT

 /templates/tpl_modified/css/general_bottom.js.php :

 /templates/tpl_modified/javascript/general_bottom.js.php
LG

Offline awids

  • Experte
  • *****
  • Beiträge: 2.523
  • Geschlecht: Männlich
    • Teile Beitrag
    • awids Onlineshop
Ja stimmt.  :mhhh: Der Nachteil von Copy&Paste... Hab ich mal erwähnt, dass ich Anleitungen schreiben hasse? :D

Anbei nochmals das Paket mit korrekter Anleitung.

[EDIT Tomcraft 20.06.2017: Modul in Beitrag 1 aktualisiert.]

Offline Onlineshopper

  • Viel Schreiber
  • *****
  • Beiträge: 526
  • Geschlecht: Männlich
    • Teile Beitrag
    • der-materialspezialist
Schönes Modul. Vielen Dank dafür.
Hab aber 1 Problem:

Wird alles so angezeigt wie es soll, allerdings nicht bei Artikeln mit Attributen in der product_info_v1.html Variante als Dropdown.

Hab ich irgendwo einen Fehler eingebaut?

LG
Nils

Offline awids

  • Experte
  • *****
  • Beiträge: 2.523
  • Geschlecht: Männlich
    • Teile Beitrag
    • awids Onlineshop
Das Modul setzt in dieser Version natürlich voraus, dass entweder das Template "table_listing.html" oder aber "product_options_selection.html" verwendet wird.

Wenn auch die anderen Templates verwendet werden sollen, reicht es, in der mitgelieferten CSS-Datei folgende Zeile:

Code: CSS  [Auswählen]
.productoptions{overflow:hidden;}

so abzuändern:

Code: CSS  [Auswählen]
/*.productoptions{overflow:hidden;}*/

LG Alex

P.S.: Schön, dass sich noch jemand zu bedanken weiß. ;)

Offline Onlineshopper

  • Viel Schreiber
  • *****
  • Beiträge: 526
  • Geschlecht: Männlich
    • Teile Beitrag
    • der-materialspezialist
Auch hier noch mal vielen Dank. Jetzt klappts wieder.
Bei mir werden auf der Detailseite allerdings keine Bestandsanzeige angezeigt. Hängt das jetzt damit zusammen?

LG
Nils

Offline awids

  • Experte
  • *****
  • Beiträge: 2.523
  • Geschlecht: Männlich
    • Teile Beitrag
    • awids Onlineshop
Wie ich schon schrieb: Voraussetzungen und so. ;-) Da hier Optionstemplates mit eigener Ampel erwartet werden, wird die Ampel im Hauptartikel nicht mehr angezeigt.

Die auskommentierte CSS-Anweisung hat nichts damit zu tun. Diese sollte nur bewerkstelligen, dass der Attribut-Hover nur innerhalb dieser Klasse angezeigt wird.

Wenn du generell nur mit den DropDowns arbeitest, müsste man bei dir eine modifizierte Version installieren, welche nicht nach Attributen fragt.

Offline Onlineshopper

  • Viel Schreiber
  • *****
  • Beiträge: 526
  • Geschlecht: Männlich
    • Teile Beitrag
    • der-materialspezialist
Ja bei mir gibt es nur die V1 mit Dropdown.

Naja in der Übersicht wird der Bestand ja angezeigt. Muss ich mich damit zufrieden geben.
Ich werds überleben  :-)

Offline TrueWire

  • Frisch an Board
  • **
  • Beiträge: 72
  • Geschlecht: Männlich
    • Teile Beitrag
    • True Words - True Vapers
Hey,
wie kann man es machen, dass nun neben der Ampel noch die Anzahl der verfügbaren Artikel steht ?

Jemand eine Idee ?

LG

Offline kgd

  • Experte
  • *****
  • Beiträge: 1.631
    • Teile Beitrag
    • https://www.karsta.de
In den product_options-Dateien steht von Hause aus die Variable {$item_data.STOCK} zur Anzeige des Lagerbestandes der Attribute zur Verfügung.
(z.B. hier in der templates\tpl_modified\module\product_options\multi_options_1.html innerhalb der {foreach key=key_data item=item_data from=$options_data.DATA} mit einfügen)

Oder beim Konfigurieren des Moduls "CSS Produkt- & Attributlagerampel" > "Art der Anzeige" > auf "Text" stellen. (text: Text-Lagerampel mit Lagerbeständen)

BG kgd

Offline awids

  • Experte
  • *****
  • Beiträge: 2.523
  • Geschlecht: Männlich
    • Teile Beitrag
    • awids Onlineshop
Und in den product_info_*.html's wäre die Variable {$PRODUCTS_QUANTITY} und im Listing {$module_data.PRODUCTS_QUANTITY}.

Offline soundrotation

  • Neu im Forum
  • *
  • Beiträge: 13
  • Geschlecht: Männlich
    • Teile Beitrag
    • LIGHTEQUIP
Vielen Dank für das Modul. Ich habe es nun auch installiert. Läuft soweit auch.
Allerdings wird bei mir keine Artikeldetailseite mehr angezeigt. :’-(. Alles ist weiß :-(
Ich bin alle Änderungen nun dreimal durchgegangen und habe keinen Fehler festgestellt.

Muss ich vorher einen Template Cache oder sowas ähnliches löschen ?

Hilfe !

Offline awids

  • Experte
  • *****
  • Beiträge: 2.523
  • Geschlecht: Männlich
    • Teile Beitrag
    • awids Onlineshop
Das Modul wurde über 25x geladen und außer kleinen Schönheitsfehlern wurde hier bislang nichts gemeldet. Es ist also davon auszugehen, dass du einen Einbaufehler hast.  :mhhh: Und das lässt sich hier ganz schlecht nachvollziehen, weil wir die Dateien / Codezeilen nicht sehen.

Offline soundrotation

  • Neu im Forum
  • *
  • Beiträge: 13
  • Geschlecht: Männlich
    • Teile Beitrag
    • LIGHTEQUIP
Alles gut.
Ich habe gerade festgestellt das hinter meinen Artikeln als Vorlage für Artikeldetails: "default" eingestellt war.
Nun habe ich alles geändert und es funktioniert!
Danke schön.

Offline TrueWire

  • Frisch an Board
  • **
  • Beiträge: 72
  • Geschlecht: Männlich
    • Teile Beitrag
    • True Words - True Vapers
Hey,
ich finde da keinen Einbaufehler von mir, wobei ich doch davon ausgehe, aber man sieht den Wald voller Bäume nicht. :D

templates/tpl_modified/module/product_info

Code: PHP  [Auswählen]
{config_load file="$language/lang_$language.conf" section="product_info"}
{config_load file="lang_`$language`.custom"}
<div itemscope itemtype="http://schema.org/Product">
  {$FORM_ACTION}
  <h1 itemprop="name">{$PRODUCTS_NAME}</h1>
  <div id="product_details">
    <div class="pd_imagebox">
      {if $PRODUCTS_IMAGE != ''}
        <div class="pd_big_image">
          <a class="cbimages" title="{$PRODUCTS_NAME|onlytext}" href="{$PRODUCTS_IMAGE|replace:"info_images":"popup_images"}"><img itemprop="image" src="{$PRODUCTS_IMAGE}" alt="{$PRODUCTS_NAME|onlytext}" /></a>
        </div>
        <div class="zoomtext">{#zoomtext#}</div>
     {/if}
      {if $more_images|@count > 0}
        {foreach item=more_images_data from=$more_images}
        <div class="pd_small_image"><a class="cbimages" title="{$PRODUCTS_NAME|onlytext}" href="{$more_images_data.PRODUCTS_IMAGE|replace:"info_images":"popup_images"}"><img src="{$more_images_data.PRODUCTS_IMAGE}" alt="{$PRODUCTS_NAME|onlytext}" /></a></div>                          
        {/foreach}
        <br class="clearfix" />
      {/if}
    </div>

    <div class="pd_content">
      <div class="pd_infobox">
        <div class="pd_inforow_first"></div>
        {if $SHIPPING_NAME}<div class="pd_inforow"><strong>{#text_shippingtime#}</strong> {if $SHIPPING_IMAGE}<img class="pd_shipping_image" src="{$SHIPPING_IMAGE}" alt="{$SHIPPING_NAME}" />{/if} {$SHIPPING_NAME_LINK}</div>{/if}
                       
        {* Modul Anzeige voraussichtlicher Liefertermin *}    
        {if $DELIVERY_DATE}<div class="pd_inforow">{$DELIVERY_DATE}</div>{/if}  
                       
        {if $PRODUCTS_MODEL != ''}<div class="pd_inforow"><strong>{#model#}</strong> {$PRODUCTS_MODEL}<meta itemprop="model" content="{$PRODUCTS_MODEL}" /></div>{/if}  
{if !isset($MODULE_product_options) && $MODULE_product_options == ''}<div class="pd_inforow">{traffic_light stock=$PRODUCTS_QUANTITY modul='info'}</div>{/if}
        {if $PRODUCTS_EAN != ''}<div class="pd_inforow"><strong>{#ean#}</strong> {$PRODUCTS_EAN}</div>{/if}  
       {if $PRODUCTS_RATING_COUNT > 1}
        <div class="pd_inforow" itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
          <strong>{#info_reviews#}</strong>
         <span class="pd_reviews_image"><img src="{$tpl_path}img/stars_{$PRODUCTS_AVERAGE_RATING}.png" alt="" /></span>
          ({$PRODUCTS_RATING_COUNT})
          <meta itemprop="ratingValue" content="{$PRODUCTS_AVERAGE_RATING}" />
          <meta itemprop="bestRating" content="5" />
          <meta itemprop="ratingCount" content="{$PRODUCTS_RATING_COUNT}" />
        </div>
        {elseif $PRODUCTS_RATING_COUNT > 0 }
        <div class="pd_inforow" itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
          <strong>{#info_review#}</strong>
         <span class="pd_reviews_image"><img src="{$tpl_path}img/stars_{$PRODUCTS_AVERAGE_RATING}.png" alt="" /></span>
          ({$PRODUCTS_RATING_COUNT})
          <meta itemprop="ratingValue" content="{$PRODUCTS_AVERAGE_RATING}" />
          <meta itemprop="bestRating" content="5" />
          <meta itemprop="ratingCount" content="{$PRODUCTS_RATING_COUNT}" />
        </div>
        {/if}
        {if isset($PRODUCTS_DISCOUNT) && $PRODUCTS_DISCOUNT != ''}<div class="pd_inforow"><strong>{#text_discount#}</strong> {$PRODUCTS_DISCOUNT}</div>{/if}  
       {if $PRODUCTS_EXPIRES}<div class="pd_inforow red">{#text_expires_date#} {$PRODUCTS_EXPIRES}</div>{/if}

        {if $PRODUCTS_MANUFACTURERS_MODEL != ''}<div class="pd_inforow"><strong>{#products_manufacturer_model#}</strong> {$PRODUCTS_MANUFACTURERS_MODEL}</div>{/if}
       {if isset($MANUFACTURER) && $MANUFACTURER != ''}<div class="pd_inforow"><strong>{#manufacturer#}</strong> <span itemprop="brand">{$MANUFACTURER}</span></div>{/if}
       {if isset($MANUFACTURER_LINK) && $MANUFACTURER_LINK != ''}<div class="pd_inforow"><strong>{#manufacturer_more_of#}</strong> <a title="{$MANUFACTURER|onlytext}" href="{$MANUFACTURER_LINK}">{$MANUFACTURER}</a></div>{/if}
       {if $PRODUCTS_URL != ''}<div class="pd_inforow">{$PRODUCTS_URL}</div>{/if}

        <ul class="pd_iconlist">
          <li class="print">{$PRODUCTS_PRINT_LAYER}</li>
          <li class="vote">{$PRODUCTS_WRITE_REVIEW}</li>
          {if isset($EXPRESS_LINK)}<li class="express">{$EXPRESS_LINK}</li>{/if}
          {if $ADD_CART_BUTTON_WISHLIST_TEXT}<li class="wishlist">{$ADD_CART_BUTTON_WISHLIST_TEXT}</li>{/if}
        </ul>
        {if isset($KLARNA_PPBOX)}{$KLARNA_PPBOX}{/if}
      </div>

      <div class="pd_summarybox" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
        <meta itemprop="priceCurrency" content="{$smarty.session.currency}" />
        {if $PRODUCTS_QUANTITY <= 0 && $smarty.const.STOCK_CHECK == 'true'}<meta itemprop="availability" content="http://schema.org/OutOfStock" />{else}<meta itemprop="availability" content="http://schema.org/InStock" />{/if}
        {if $PRODUCTS_MANUFACTURERS_MODEL != ''}<meta itemprop="mpn" content="{$PRODUCTS_MANUFACTURERS_MODEL}" />{/if}
        <meta itemprop="itemCondition" content="http://schema.org/NewCondition" />

        <div class="pd_price{if $PRODUCTS_FSK18 == 'true'} pd_fsk_padding{/if}">
        {if $PRODUCTS_FSK18 == 'true'}<div class="pd_fsk18"></div>{/if}
        {foreach name=inner item=price_data from=$PRODUCTS_PRICE_ARRAY}
          {include file="`$smarty.const.CURRENT_TEMPLATE`/module/includes/price_info.html"}
        {/foreach}
        </div>
        {if $PRODUCTS_PRICE_ARRAY.0.PRODUCTS_PRICE_FLAG != 'NotAllowed'}
          {if $PRODUCTS_VPE}<div class="pd_vpe">{$PRODUCTS_VPE}</div>{/if}
          <div class="pd_tax{if $PRODUCTS_FSK18 == 'true'} pd_fsk_padding{/if}">{$PRODUCTS_TAX_INFO}{if $PRODUCTS_SHIPPING_LINK}{$PRODUCTS_SHIPPING_LINK}{/if}</div>
        {/if}
        {if isset($MODULE_graduated_price) && $MODULE_graduated_price != ''}{$MODULE_graduated_price}{/if}
        {if isset($MODULE_product_options) && $MODULE_product_options != ''}
          {if $MODULE_product_options_template == 'multi_options_1.html' || $MODULE_product_options_template|strpos:"dropdown" !== false}
            {$MODULE_product_options}
          {/if}
        {/if}
     
        {if $ADD_CART_BUTTON != ''}
        <div class="addtobasket">
          <span class="addtobasket_input">{$ADD_QTY}</span>
          <span class="addtobasket_button">{$ADD_CART_BUTTON}</span>
          {if isset($ADD_CART_BUTTON_EXPRESS)}
            <br class="clearfix" />
            <span class="addtobasket_button">{$ADD_CART_BUTTON_EXPRESS}</span>
          {elseif $ACTIVATE_EXPRESS_LINK}
            <br class="clearfix" />
            <span class="express_info"><a href="{$ACTIVATE_EXPRESS_LINK}">{#checkout_express_activate#}</a></span>
         {/if}
          {if $ADD_CART_BUTTON_PAYPAL}
            <br class="clearfix" />
            <span class="addtobasket_button">{$ADD_CART_BUTTON_PAYPAL}</span>
          {/if}
          {*if $ADD_CART_BUTTON_WISHLIST}
            <br class="clearfix" />
            <span class="addtobasket_button">{$ADD_CART_BUTTON_WISHLIST}</span>
          {/if*}
        </div>
        {/if}
     
        {if $ADD_CART_BUTTON == '' && $PRODUCTS_FSK18 == 'true'}<div class="pd_inforow_message">{#products_fsk18_check#}</div>{/if}
       {if $ADD_CART_BUTTON == '' && $PRODUCTS_GIFT_FORBIDDEN == 'true'}<div class="pd_inforow_message">{#products_gift_forbidden#}</div>{/if}
       {if isset($PRODUCTS_DATE_AVAILABLE) && $PRODUCTS_DATE_AVAILABLE != ''}<div class="pd_inforow_message">{$PRODUCTS_DATE_AVAILABLE}</div>{/if}

      </div>
      <br class="clearfix" />
      {if isset($XTB_REDIRECT_USER_TO) && $XTB_REDIRECT_USER_TO == 'product'}
        <div class="xtb_booster_redirect_message"><strong>Sie haben die eBay Auktion gewonnen!</strong><br />Bitte w&auml;hlen Sie nun noch die gew&uuml;nschten Produkteigenschaften und legen Sie den Artikel danach in den Warenkorb, um mit der Zahlung fortzufahren und das Produkt versandfertig zu machen!</div>
      {/if}
      {if isset($MODULE_product_options) && $MODULE_product_options != ''}
        {if $MODULE_product_options_template != 'multi_options_1.html' && $MODULE_product_options_template|strpos:"dropdown" === false}
          {$MODULE_product_options}
        {/if}
      {/if}      
    </div>  
    <br class="clearfix" />
    {if isset($MANUFACTURER_IMAGE) && $MANUFACTURER_IMAGE != ''}<div class="pd_manu_image"><a title="{$MANUFACTURER|onlytext}" href="{$MANUFACTURER_LINK}"><img src="{$MANUFACTURER_IMAGE}" alt="{$MANUFACTURER|onlytext}" /></a></div>{/if}
  </div>
  {$FORM_END}

  {if $PRODUCTS_DESCRIPTION != ''}<h4 class="detailbox">{#products_desc#}</h4><div class="pd_description" itemprop="description">{$PRODUCTS_DESCRIPTION}</div><br />{/if}
 {if isset($MODULE_product_tags) && $MODULE_product_tags != ''}{$MODULE_product_tags}{/if}
  {if isset($MODULE_products_media) && $MODULE_products_media != ''}{$MODULE_products_media}{/if}
  {if isset($MODULE_products_reviews) && $MODULE_products_reviews != ''}{$MODULE_products_reviews}{/if}
  {if isset($MODULE_cross_selling) && $MODULE_cross_selling != ''}{$MODULE_cross_selling}{/if}
  {if isset($MODULE_reverse_cross_selling) && $MODULE_reverse_cross_selling != ''}{$MODULE_reverse_cross_selling}{/if}
  {if isset($MODULE_also_purchased) && $MODULE_also_purchased != ''}{$MODULE_also_purchased}{/if}
  {if isset($MODULE_products_category) && $MODULE_products_category != ''}{$MODULE_products_category}{/if}

  {if $PRODUCTS_ADDED != ''}<p class="dateadded_border">{$PRODUCTS_ADDED}</p>{/if}
  {$PRODUCT_NAVIGATOR}
</div>


Teile per facebook Teile per linkedin Teile per twitter

 


             
anything