Wer Artikel von Ingrammicro in seinen Shop importiert, kann das
vielleicht gebrauchen:
Dies ist ein kleines Skript, das beim Aufruf der Artikel Detail Seite eine
Abfrage an Ingrammicro macht, die den Lagerbestand des aktuell aufgerufenen Artikels
zurück liefert und diesen mit einer Lager Ampel ausgibt.
[ Für Gäste sind keine Dateianhänge sichtbar ]
************
Als erstes braucht Ihr Eure Ingram "Kundennummer" und das "Passwort" zur Hand,
dann kann's weiter gehen!
************
In "/images/icons/" Ampel Icons erstellen, oder einfach die hier angefügten nehmen:
[ Für Gäste sind keine Dateianhänge sichtbar ]
[ Für Gäste sind keine Dateianhänge sichtbar ]
[ Für Gäste sind keine Dateianhänge sichtbar ]
************
In "/templates/TEMPLATENAME/module/product_info/product_info_v1.html"Am beginn der Datei, nach Zeile:
{config_load
file="$language/lang_$language.conf" section
="product_info"} folgendes einfügen:
{config_load
file="$language/lang_$language.conf" section
="availability"} ************
An gewünschter Stelle folgenden Code einfügen:
(Ingram Kundennummer und Password statt den "XXXXX" eintragen)
{php
}$kdnr="XXXXX";$passwd="XXXXX";$abfrage="https://ec.ingrammicro.de/cgi-bin/avail/avail.pl?CCD=DE&BNR=15&KNR=$kdnr&PWD=$passwd&SKU=".$this->_tpl_vars
["PRODUCTS_MODEL"];$request = fopen($abfrage,"r"); $this->_tpl_vars
['PRODUCTS_QUANTITY'] = fgets($request);{/php
}<table width
="200" border
="0" cellpadding
="0" cellspacing
="0"> <tr valign
="middle"> <td
class="main">{#text_stock#}</td>
{if $PRODUCTS_QUANTITY <= 0} <td
><img src
="images/icons/ampel_rot.jpg" alt
="{#text_stock_1#}" title
="{#text_stock_1#} ({$PRODUCTS_QUANTITY})" /></td
> {elseif $PRODUCTS_QUANTITY <= 5} <td
><img src
="images/icons/ampel_gelb.jpg" alt
="{#text_stock_2#}" title
="{#text_stock_2#} ({$PRODUCTS_QUANTITY})" /></td
> {else} <td
><img src
="images/icons/ampel_gruen.jpg" alt
="{#text_stock_3#}" title
="{#text_stock_3#} ({$PRODUCTS_QUANTITY})" /></td
> {/if} </tr
> </table
> ****************************
****************************
In "/lang/german/lang_german.conf"am ende der Datei folgendes einfügen:
[availability]
#verfügbarkeitsabfrage
text_stock = 'Echtzeit Verfügbarkeit'
text_stock_1 = 'In Kürze wieder verfügbar'
text_stock_2 = 'Nur noch wenige Artikel Vorhanden'
text_stock_3 = 'Artikel Verfügbar'
**********************
**********************
Das war's auch schon!*********************
*********************
Sollte die Ingram Artikelnummer nicht in der Datenbank im Feld "PRODUCTS_MODEL" sondern in einem
anderen Feld stehen (z.b. "VENDOR_PRODUCTS_MODEL") dann ist zusätzlich in der Datei:
/includes/modules/product_info.phpder Eintrag mit dem Ingram Artikelnummer Datenbankfeld zu setzen, sofern nicht schon vorhanden:
Folgende Zeile suchen:
$info_smarty->assign('PRODUCTS_MODEL', $product->data['products_model']);
danach einfügen:
$info_smarty->assign('VENDOR_PRODUCTS_MODEL', $product->data['vendor_products_model']);
Zusätzlich muss (Logischerweise) noch in der "product_info_v1.html" der Eintrag "PRODUCTS_MODEL"
mit "VENDOR_PRODUCTS_MODEL" ersetzt werden.
Linkback: https://www.modified-shop.org/forum/index.php?topic=5290.0