Witam,
Mam na imie Marta i jestem zupelnie zielona w temacie PHP. Niedawno sama otwarlam sobie sklep oparty o engine zencart. (
Tutaj sklep)Jest to sklep z produktami wirtualnymi. Wszystko dziala jak trzeba. Jednak od niedawna oferuje w swoim sklepie produkty w tzw. systemie Pay Whay You Want. W tej kategorii produkt w sklepie mozna kupic za dowolna sumie ( min. ustawione na 1 euro). Znalazlam przydatny kod na stronie pomocy zencart. Kod ten ustawia produkt typu donation dla wybranego ID produktu.
Oto kod:
<!--bof Add to Cart Box -->
<?php
if (CUSTOMERS_APPROVAL == 3 and TEXT_LOGIN_FOR_PRICE_BUTTON_REPLACE_SHOWROOM == '') {
// do nothing
} else {
?>
<?php
$display_qty = (($flag_show_product_info_in_cart_qty == 1 and $_SESSION['cart']->in_cart($_GET['products_id'])) ? '<p>' . PRODUCTS_ORDER_QTY_TEXT_IN_CART . $_SESSION['cart']->get_quantity($_GET['products_id']) . '</p>' : '');
if ($products_qty_box_status == 0 or $products_quantity_order_max== 1) {
// hide the quantity box and default to 1
$the_button = '<input type="hidden" name="cart_quantity" value="1" />' . zen_draw_hidden_field('products_id', (int)$_GET['products_id']) . zen_image_submit(BUTTON_IMAGE_IN_CART, BUTTON_IN_CART_ALT);
} else { /* Alternate code to change text for donation.
as per <a href="https://www.zen-cart.com/forum/showthread.php?t=115475" target="_blank">https://www.zen-cart.com/forum/showthread.php?t=115475</a>
*/
// the alternate text - products_id would be the id of your donation product:
if ($_GET['products_id'] == 103) {
$add_text = 'Amount: $';
$button_image = 'donate.png';
$button_alt = 'Donate';
} else {
$add_text = PRODUCTS_ORDER_QTY_TEXT;
$button_image = BUTTON_IMAGE_IN_CART;
$button_alt = BUTTON_IN_CART_ALT;
}
// show the quantity box -
// Everything is the same here, except at very beginning and at end:
$the_button = $add_text . '<input type="text" name="cart_quantity" value="' . (zen_get_buy_now_qty($_GET['products_id'])) . '" maxlength="6" size="4" /><br />' . zen_get_products_quantity_min_units_display((int)$_GET['products_id']) . '<br />' . zen_draw_hidden_field('products_id', (int)$_GET['products_id']) . zen_image_submit($button_image, $button_alt);
}
$display_button = zen_get_buy_now_button($_GET['products_id'], $the_button);
?>
<?php if ($display_qty != '' or $display_button != '') { ?>
<div id="cartAdd">
<?php
?>
</div>
<?php } // display qty and button ?>
<?php } // CUSTOMERS_APPROVAL == 3 ?>
Po wklejeniu go do pliku tpl_product_info_display.php udalo mi sie osiagnac to, ze produkt o danym ID w moim przypadku 103 został sklasyfikowany jak trzeba i nawet ma inny button. I do tej pory wszystko pięknie. O co mi chodzi? Chciałabym, aby ten kod robil to dla calej kategori produktow a nie jednego produktu. Czy można dodać więcej zmiennych po 103? I jak? Jak zmodyfikować kod aby stosował się dla całej kategorii (ID 29)? Próbowałam zamiast products_ID wpisać categories_ID i nie zadziałało. Proszę o rade i pomoc.