Antwort #44 am: 02. November 2010, 17:42:14
Hallo skybrands,
ich habe das was hier alles erklärt wurde nun mal in meinem Testshop ausprobiert und es geht einwandfrei. Das Graduated wird dann separat in der product_info angezeigt.
Ansonsten noch mal alles so zurück bauen wie Urzustand und dann:
Hier noch mal die Anleitung:
Die Klasse erweitern in "/includes/classes/product.php" und in Z.50 das:
$product_query = "SELECT * FROM ".TABLE_PRODUCTS." p,
".TABLE_PRODUCTS_DESCRIPTION." pd
WHERE p.products_status = '1'
AND p.products_id = '".$this->pID."'
AND pd.products_id = p.products_id
".$group_check.$fsk_lock."
AND pd.language_id = '".(int) $_SESSION['languages_id']."'";
ändern in:
$product_query = "SELECT * FROM ".TABLE_PRODUCTS." AS p
LEFT JOIN ".TABLE_PRODUCTS_DESCRIPTION." AS pd
ON (p.products_id = pd.products_id)
LEFT JOIN ".TABLE_SPECIALS." AS ps
ON (p.products_id = ps.products_id)
WHERE p.products_status = '1'
AND p.products_id = '".$this->pID."'
".$group_check.$fsk_lock."
AND pd.language_id = '".(int) $_SESSION['languages_id']."'";
Die Funktion in "/includes/classes/product.php"
vor dem letzten } einfügen:
function xtcFormatErsparnis
($pID, $sPrice, $pPrice, $format, $vpeStatus = 0) { if ($format) { if ($vpeStatus == 0) { $ersparnis = YOU_SAVE
.round(($pPrice-$sPrice) / $pPrice * 100,1).' % /'.$this->xtcFormat($pPrice-$sPrice, $format); } else { $ersparnis = ''; } return $ersparnis; }} Dann in der "/includes/modules/product_info.php" nach Z.97 das einfügen:
// EXTRA GRADUATED PRICE
$pID = $product->data['products_id'];
$sPrice = $product->data['specials_new_products_price'];
$pPrice = $product->data['products_price'];
$products_save = $xtPrice->xtcFormatErsparnis($pID, $sPrice, $pPrice, $format = true, $vpeStatus = 0);
$info_smarty->assign('PRODUCTS_SAVE', $products_save);
// EXTRA GRADUATED PRICE
und anschließend in der "/templates/xtc5/module/product_info/product_info_v1.html" an geeigneter Stelle das einfügen:
<small>{$PRODUCTS_SAVE}</small>
Viele Grüße
Franky