Definierte Zusatz-Artikel im Warenkorb anzeigen
Aus Wiki | xtcModified eCommerce Shopsoftware
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.

