Hallo zusammen,
obwohl das Problem Google wohl schon seit mind. Dezember bekannt ist,
hat sich da leider noch keiner erbarmt ein seperates Feld für Versandkosten einzubauen
Siehe Google Base ForumUm auf der sicheren Seite zu sein, ist es mit dem IBOLister Plus auch möglich die Versandkosten
auf den Artikelpreis aufzuschlagen und dann einen entsprechenden Hinweis am Anfang der Artikelbeschreibung auszugeben.
Dazu wechseln Sie zunächst im Dateiexplorer in den Ordner "<Ihr Projektverzeichnis>\listerplus_modul\inc".
Prüfen Sie dann, ob dort eine Datei "lister_userdefs.pm" liegt.
Falls nicht benennen Sie die "lister_userdefs.pm.txt" um zu "lister_userdefs.pm" und tragen diese im Workcenter als zusätzliche Datei ein, damit sie autom. hochgespielt wird.
Öffnen Sie die "lister_userdefs.pm" mit einem Texteditor und fügen dort den unten aufgeführten Code ein und speichern ab.
Veröffentlichen Sie danach den Shop und loggen sich online in die IBOLister Plus Verwaltungsoberfläche ein.
In den Froogle-Profileinstellungen können Sie dann die neuen Funktionen verwenden indem Sie folgendes eintragen:
Beim Feld "preis":
- Daten lesen aus: "(benutzerdef. Funktion)"
- benutzerdef. Funktion: "MyPrice"
Beim Feld "beschreibung":
- Daten lesen aus: "(benutzerdef. Funktion)"
- benutzerdef. Funktion: "MyDetailDescr"
sub MyPrice {
my $price = ssp::get_var_db('PRICE', 0);
my $price_sitm = ssp::get_var_db('SITM_PRICE', 0);
my $versandkosten = 4.90;
my $preisfaktor = 1; ## oder 1.19, falls im Shop Netto-Preise eingetragen sind.
if (($price_sitm eq $ssp::undefined) ||
($price_sitm eq '')) {
$price = "0" if ($price !~ /^[\d,\.]+$/);
$price =~ s/,/./;
$price = _fgdRunden($price * $preisfaktor + $versandkosten, 2);
$price =~ s/^[^\d]+//;
return $price; ## Preis Hauptartikel / normaler Artikel
} else {
$price_sitm = "0" if ($price_sitm !~ /^[\d,\.]+$/);
$price_sitm =~ s/,/./;
$price_sitm = _fgdRunden($price_sitm * $preisfaktor + $versandkosten, 2);
$price_sitm =~ s/^[^\d]+//;
return $price_sitm; ## Preis Variante
}
}
sub MyDetailDescr
my %params = @_;
${$params{pForceHTML}} = 0;
my $hauptartikelbeschreibung = ssp::get_var_db('DETAIL', 0);
my $variantenbeschreibung = ssp::get_var_db('SITM_DESCR', 0);
if (($variantenbeschreibung eq $ssp::undefined) ||
($variantenbeschreibung eq '')) {
## Keine Variantenbeschreibung gefunden oder
## aktueller Datensatz ist keine Variante
## Gebe dann nur die Hauptartikelbeschreibung aus
return "Kostenloser Versand! " . $hauptartikelbeschreibung;
} else {
## Bilde Beschreibung nach folgendem Schema:
## "Hauptartikelbeschreibung - Variantenbeschreibung"
return "Kostenloser Versand! " . $hauptartikelbeschreibung . " - " . $variantenbeschreibung;
}
}
sub _fgdRunden {
my $dInput = shift ( @_ ) || 0;
my $iStelle = shift ( @_ ) || 0;
my $iVorz = ( $dInput < 0 ) ? -1 : 1;
my $dErg = int ( $dInput * (10**$iStelle) + ( $iVorz*0.5 ) ) / ( 10**$iStelle);
return ( $dErg );
}