Definierte Zusatz-Artikel im Warenkorb anzeigen
Hallo, wie bekomme ich die Cross Selling ins Template unter den Warenkorb? Hier ist die jeweilige Smarty-Funktion anscheinend nicht verfügbar.
Antwort von GTB (04.08.2010)
diese Funktion ist nicht Standard.
du kannst mit geringem Aufwand dir zusätzlich Artikel die du vorher definierst im Warenkorb anzeigen lassen.
füge in der "/shopping_cart.php" noch vor:
} else {
// empty cart
$cart_empty = true;
folgenden Code ein.
// Anzeige von Zusatzartikel im Warenkorb
require_once (DIR_FS_INC.'xtc_get_vpe_name.inc.php');
$special_query = xtc_db_query("SELECT p.products_id, pd.products_name, p.products_image, p.products_tax_class_id, p.products_price, p.products_vpe_status, p.products_vpe_value, p.products_vpe
FROM products_to_categories ptc, categories_description cd, products p, products_description pd
WHERE cd.categories_name='Warenkorb'
AND cd.language_id=2
AND ptc.categories_id=cd.categories_id
AND p.products_id=ptc.products_id
AND pd.products_id=p.products_id
AND pd.language_id='".$_SESSION['languages_id']."'
ORDER by RAND() LIMIT 3");
if (xtc_db_num_rows($special_query)) {
$module_content = array ();
while ($special = xtc_db_fetch_array($special_query)) {
$products_price = $xtPrice->xtcGetPrice($special['products_id'], $format = true, 1, $special['products_tax_class_id'], $special['products_price'], 1);
$vpe = '';
if ($special['products_vpe_status'] == 1 && $special['products_vpe_value'] != 0.0) {
$vpe = $xtPrice->xtcFormat($products_price['plain'] * (1 / $special['products_vpe_value']), true).TXT_PER.xtc_get_vpe_name($special['products_vpe']);
}
$special_image = '<a href="'.xtc_href_link(FILENAME_PRODUCT_INFO, xtc_product_link($special['products_id'], $special['products_name'])).'">'.xtc_image(DIR_WS_THUMBNAIL_IMAGES.$special['products_image'], $special['products_name']).'</a>';
$special_name = '<a href="'.xtc_href_link(FILENAME_PRODUCT_INFO, xtc_product_link($special['products_id'], $special['products_name'])).'">'.$special['products_name'].'</a>';
$special_buy_now = '<a href="'.xtc_href_link(FILENAME_PRODUCT_INFO, xtc_product_link($special['products_id'], $special['products_name'])).'">'.xtc_image_button('button_buy_now.gif', TEXT_BUY.$special['products_name'].TEXT_NOW).'</a>';
$module_content[] = array ('SPECIAL_NAME' => $special_name, 'SPECIAL_VPE' => $vpe, 'SPECIAL_ID' => $special['products_id'], 'SPECIAL_IMAGE' => $special_image, 'SPECIAL_PRICE' => $products_price['formated'], 'SPECIAL_BUY_NOW' => $special_buy_now);
}
} else {
$module_content = false;
}
$smarty->assign('module_content', $module_content);
// ENDE
Im Admin erstellst du einen neue Kategorie "Warenkorb" und verlinkst die Produkte die du im Warenkorb anzeigen lassen möchtest.
im Tempalte "/templates/xtc5/module/shopping_cart.html"
kannst du so die Produkte anzeigen lassen: (Formatierung selber durchführen)
{foreach name=aussen item=module_data from=$module_content}
{$module_data.SPECIAL_NAME}
{$module_data.SPECIAL_IMAGE}
{$module_data.SPECIAL_PRICE}
{$module_data.SPECIAL_VPE}
{$module_data.SPECIAL_BUY_NOW}
{/foreach}
Viel Spass damit!
GTB
Nachtrag Tomcraft: Die Artikel, die angezeigt werden sollen, müssen der Kategorie "Warenkorb" zugeordnet/verlinkt werden. Diese Kategorie darf jedoch "inaktiv" sein, damit sie im Kategoriebaum nicht angezeigt wird.