|
|||
|
Gibt es eine einfache Methode Preise nur anzuzeigen, wenn sie nicht gleich Null sind ? Oder anders herum: Alle Preise, die gleich 0,00 sind ausblenden ?
Bei mir werden die meisten (aber nicht alle) Preise ?ber die Produktoptionen / Attribute festgelegt und unter der Produktbeschreibung als Tabelle angeboten. Ich habe zwar schonmal nach folgendem Tipp ... Zitat:
|
|
|||
|
Zitat:
|
|
|||
|
Dann musst du in jeden eizelnen Templateteil das etwa so machen:
(Beispiel f?r die Product_info.html) Code:
{if $PRODUCTS_PRICE != '0'}<font size="5" color="#000000" face="Verdana, Arial, Helvetica, sans-serif"><strong>{$PRODUCTS_PRICE}
</strong></font>{/if}
|
|
||||
|
Hi!
Ich habe aus der Datei komplett die Preise gel?scht und h?tte jetzt gerne diese if-schleife wieder drin! Da ich jedoch kein php kann, w?r es super, wenn mir jemand meinen "falschen" Code "reparieren" k?nnte :bounce: Zitat:
![]() Gr??e s04-freak |
|
|||
|
Die finale L?sung ist es, die Preisformatierungsroutinen so zu modifizieren, dass sie im Falle "Preis ist null" eine leere Zeichenkette zur?ckgeben.
Dazu m?ssen die Routinen xtc_format_price.inc.php xtc_format_price_graduated.inc.php xtc_format_price_order.inc.php xtc_format_special_price.inc.php im Verzeichnis "inc" ge?ndert werden. Der vorhandene Code muss eingeschlossen werden in folgenden Code: Code:
if (floatval($price_string) == 0)
{
$price_string = '';
}
else
{
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
}
Im Modul xtc_format_special_price.inc.php muss die erste Zeile lauten Code:
if (floatval($special_price) == 0)
{
$special_price = '';
}
else
{
XXXXXXXXXXXXXXXXXXXXXXXXXXXX
}
|
|
||||
|
Hi
Also entweder funktioniert es nicht, oder ich bin zu bl?d :i: Habe nun folgende Codes in den Scripts: xtc_format_price.inc.php Zitat:
Zitat:
Zitat:
Zitat:
![]() Gr??e s04-freak |
|
|||
|
Zitat:
Die Function "xtc_format_price_graduated" sieht nach der ?nderung z.B. so aus: Code:
function xtc_format_price_graduated($price_string,$price_special,$calculate_currencies,$products_tax_class)
{
if ((int)$price_string == 0)
{
$price_string = '';
}
else
{
$currencies_query = xtc_db_query("SELECT symbol_left,
symbol_right,
decimal_places,
decimal_point,
thousands_point,
value
FROM ". TABLE_CURRENCIES ." WHERE
code = '".$_SESSION['currency'] ."'");
$currencies_value=xtc_db_fetch_array($currencies_query);
$currencies_data=array();
$currencies_data=array(
'SYMBOL_LEFT'=>$currencies_value['symbol_left'] ,
'SYMBOL_RIGHT'=>$currencies_value['symbol_right'] ,
'DECIMAL_PLACES'=>$currencies_value['decimal_places'] ,
'VALUE'=> $currencies_value['value']);
if ($calculate_currencies=='true') {
$price_string=$price_string * $currencies_data['VALUE'];
}
// add tax
$products_tax=xtc_get_tax_rate($products_tax_class);
if ($_SESSION['customers_status']['customers_status_show_price_tax'] =='0') {
$products_tax='';
}
$price_string= (xtc_add_tax($price_string,$products_tax));
// round price
$price_string=xtc_precision($price_string,$currencies_data['DECIMAL_PLACES']);
if ($price_special=='1') {
$price_string=number_format($price_string,$currencies_data['DECIMAL_PLACES'], $currencies_data['DEC_POINT'], $currencies_data['THD_POINT']);
$price_string = $currencies_data['SYMBOL_LEFT']. ' '.$price_string.' '.$currencies_data['SYMBOL_RIGHT'];
}
}
return $price_string;
}
|
![]() |
| Lesezeichen |
| Stichworte |
| anzeigen, null, preis |
| Themen-Optionen | |
| Ansicht | |
|
|