Hi, hätte gerne gewußt wie ich es hinbekomme, dass ein Produkt nur angezeigt wird wenn:
1. die Anzahl auf Lager größer ist als die Mindestbestellmenge(selbsterstellte Variable(###ATLEASTQTY###))
2. die Anzahl auf Lager > 0 ist ( habe AlwaysInStock nicht gesetzt..)
Vorschlag:
if (["###PRODUCT_INSTOCK###"]>["###ATLEAST###"]) {
<--! ITEM_SINGLE begin -->
usw.
<--! ITEM_SINGLE end -->
}
Funktioniert aber nicht ! In welcher Sprache kann man überhaupt Bedingungen in der .tmpl Datei definieren ? PHP oder JS ? Vorschläge bitte mit Syntax, danke
tobip schrieb
Hi, hätte gerne gewußt wie ich es hinbekomme, dass ein Produkt nur angezeigt wird wenn:
1. die Anzahl auf Lager größer ist als die Mindestbestellmenge(selbsterstellte Variable(###ATLEASTQTY###))
2. die Anzahl auf Lager > 0 ist ( habe AlwaysInStock nicht gesetzt..)
In welcher Sprache kann man überhaupt Bedingungen in der .tmpl Datei definieren ? PHP oder JS ? Vorschläge bitte mit Syntax, danke
Das geht nur über eine zusätzliche SQL-where Klausel. Es muß eine neue Konfiguration hinzukommen, die in der Listenansicht eine zusätzliche WHERE-Bedingung für die SQL-Abfragen dranhängt.
2. Ist möglich über 'ShowNotInstock=0'.
Habe ShowNotInStock = 0 in die Setup-Datei geschrieben, leider werden die Artikel, die 0mal auf Lager sind, immernoch angezeigt.
Habe nun in der class-Datei geschaut und unter
/**
* Displaying single products/ the products list / searching
**/
die folgende Zeile gefunden, die meiner Meinung dafür verantwortlich ist, welche Produkte alles aus der DB geholt werden:
$query = "SELECT * FROM tt_products WHERE uid=".intval($this->tt_product_single)." AND pid IN (".$this->pid_list.")".$this->cObj->enableFields("tt_products");
Ich habe es dann etwas umgeändert:
$query = "SELECT * FROM tt_products WHERE inStock > atleastqty AND inStock IS NOT NULL AND uid=".intval($this->tt_product_single)." AND pid IN (".$this->pid_list.")".$this->cObj->enableFields("tt_products");
Leider funktioniert es immernoch nicht. Ist das doch die falsche Stelle, oder habe ich etwas falsch verstanden ?
Edit: Hast ja gesagt, bei der Liste, war gerade ja bei der single-ansicht:
$query = "SELECT * FROM tt_products WHERE uid IN (".$this->uid_list.") AND pid IN (".$this->pid_list.")".$this->cObj->enableFields("tt_products");
Wenn ich da die Bedingung mit einfüge, hat es trotzdem keinen Effekt, das Produkt, dass 0 mal auf Lager ist und eine Mindestbestellmenge von 200 hat, wird weiterhin angezeigt.
Du verwendest noch tt_products 1.2.7. Dort gibt es diese Option 'showNotinStock' noch nicht.