Naast de product opties: op voorraad en niet op voorraad, maken we bij enkele lastig te verkrijgen producten ook gebruik van de aantallen waarbij het aantal vanzelf 0 wordt.
Indien het aantal op 0 staat, dan moet de toevoegen aan winkelwagen knop verborgen zijn.
Op de product en categorie pagina is het mij met dank aan de if statement dit gelukt.
Product pagina:
<?php if ($quantity < 1) { ?>
Niet op voorraad
<?php } else { ?>
Op voorraad
<?php } ?>
Categorie pagina:
<?php if ($product['quantity'] < 1) { ?>
Niet op voorraad
<?php } else { ?>
Op voorraad
<?php } ?>
Uiteraard met de quantity toevoeging in de controller file.
In de gerelateerde producten op de product pagina, welke op basis is van de 'bestseller' is mij dit nog niet gelukt.
Is er iemand die mij de oplossing kan bieden? Of raad iemand een andere manier aan?
Indien het aantal op 0 staat, dan moet de toevoegen aan winkelwagen knop verborgen zijn.
Op de product en categorie pagina is het mij met dank aan de if statement dit gelukt.
Product pagina:
<?php if ($quantity < 1) { ?>
Niet op voorraad
<?php } else { ?>
Op voorraad
<?php } ?>
Categorie pagina:
<?php if ($product['quantity'] < 1) { ?>
Niet op voorraad
<?php } else { ?>
Op voorraad
<?php } ?>
Uiteraard met de quantity toevoeging in de controller file.
In de gerelateerde producten op de product pagina, welke op basis is van de 'bestseller' is mij dit nog niet gelukt.
Is er iemand die mij de oplossing kan bieden? Of raad iemand een andere manier aan?
Er zijn, meerdere, Extenties die dit doen.
Al dan niet betaald.
Al dan niet betaald.
Norman in 't Veldt
Moderator OpenCart Forums
_________________ READ and Search BEFORE POSTING _________________
Our FREE search: Find your answer FAST!.
[How to] BTW + Verzend + betaal setup.
Ik had inderdaad al meerdere extensies gevonden en geprobeerd, echter ze werken niet zoals ik wil.
Daarnaast vind ik er geen waarbij ik het in de bestsellers / related products juist krijg vandaar de vraag.
Daarnaast vind ik er geen waarbij ik het in de bestsellers / related products juist krijg vandaar de vraag.
Wat is de foutmelding? Als je de quantity in the product array hebt toegevoegd zou je die moeten kunnen gebruiken in de module tpls.
Een andere oplossing is om van alle producten op een pagina, om het even wat de bron is (module, related product, compare, etc), de product_id te pakken (met javascript) en dan een db query (ajax) te doen voor de quantity van elk. Daarna ook weer via javascript de buttons updaten.
Zo hoef je niet een dozijn controllers en templates aan te passen maar doe je het in 1 enkele functie.
Zo heb ik het gedaan in een extensie van me voor OC1.5 dan
Een andere oplossing is om van alle producten op een pagina, om het even wat de bron is (module, related product, compare, etc), de product_id te pakken (met javascript) en dan een db query (ajax) te doen voor de quantity van elk. Daarna ook weer via javascript de buttons updaten.
Zo hoef je niet een dozijn controllers en templates aan te passen maar doe je het in 1 enkele functie.
Zo heb ik het gedaan in een extensie van me voor OC1.5 dan
Attn: I no longer provide OpenCart extensions, nor future support - this includes forum posts.
Reason: OpenCart version 3+
Thanks!
Vreemd, ik heb inderdaad de quantity aan de data array in de bestseller.php controller file toegevoegd zoals ook bij de andere controller files.
Als ik enkel <?php echo $product['quantity']; ?> toevoeg in de bestseller file dan krijg ik ook niks.
De meldingen die ik blijf krijgen is het volgende:
PHP Notice: Undefined index: quantity in var://catalog_view_theme_shop_template_module_bestseller_tpl on line 35
PHP Notice: Undefined variable: product in var://catalog_view_theme_shop_template_product_product_tpl on line 306
Hierbij gebruik ik dus het volgende:
<?php if ($product['quantity'] < 1) { ?>
Niet op voorraad
<?php } else { ?>
Op voorraad
<?php } ?>
Zie ik iets over het hoofd?
Als ik enkel <?php echo $product['quantity']; ?> toevoeg in de bestseller file dan krijg ik ook niks.
De meldingen die ik blijf krijgen is het volgende:
PHP Notice: Undefined index: quantity in var://catalog_view_theme_shop_template_module_bestseller_tpl on line 35
PHP Notice: Undefined variable: product in var://catalog_view_theme_shop_template_product_product_tpl on line 306
Hierbij gebruik ik dus het volgende:
<?php if ($product['quantity'] < 1) { ?>
Niet op voorraad
<?php } else { ?>
Op voorraad
<?php } ?>
Zie ik iets over het hoofd?
De producten worden opgehaald met $results = $this->model_catalog_product->getBestSellerProducts($setting['limit']);
Als je vervolgens kijkt wat deze query ophaalt zie je dat de quantity er niet bij staat.
Je zult dus deze data op een andere manier in de array zien te krijgen ofwel met een eigen methode die alleen de stock van een product ophaalt of met de $product_info = $this->model_catalog_product->getProduct($product_id);
waar de stock wel in staat: $product_info['quantity']
Bijvoorbeeld in de bestseller controller:
Als je vervolgens kijkt wat deze query ophaalt zie je dat de quantity er niet bij staat.
Je zult dus deze data op een andere manier in de array zien te krijgen ofwel met een eigen methode die alleen de stock van een product ophaalt of met de $product_info = $this->model_catalog_product->getProduct($product_id);
waar de stock wel in staat: $product_info['quantity']
Bijvoorbeeld in de bestseller controller:
Code: Select all
$product_info = $this->model_catalog_product->getProduct($result['product_id']); //dit is nieuw
$data['products'][] = array(
'product_id' => $result['product_id'],
'stock' => $product_info['quantity'], //als $product['stock'] in de tpl loop
'thumb' => $image,
'name' => $result['name'],
'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('config_product_description_length')) . '..',
'price' => $price,
'special' => $special,
'tax' => $tax,
'rating' => $rating,
'href' => $this->url->link('product/product', 'product_id=' . $result['product_id'])
);
Attn: I no longer provide OpenCart extensions, nor future support - this includes forum posts.
Reason: OpenCart version 3+
Thanks!
Zoek eens op Call for Price
http://www.opencart.com/index.php?route ... or%20Price
bijvoorbeeld Call for Price with enabled / disabled Add to Cart button
dan hoef je geen core aan te passen en werkt op iedere module. zo nodig pas je de xml aan...
http://www.opencart.com/index.php?route ... or%20Price
bijvoorbeeld Call for Price with enabled / disabled Add to Cart button
dan hoef je geen core aan te passen en werkt op iedere module. zo nodig pas je de xml aan...
Who is online
Users browsing this forum: No registered users and 31 guests