Magento PHP if Bedingung wenn Attribut bestimmten Wert hat echo ausgeben, Syntax?
Moin Leude,
habe folgende Frage, bei der ich nicht weiterkomme:
Ich möchte beim mir im Magentowarenkorb folgendes umsetzen:
Bei einem Produkt, dass im Warenkorb liegt, wird der Wert des Attributes "Lieferart" ausgegeben, der für dieses Attribut gepflegt ist.
Beispiel:
Artikel "Kletterwand" hat Lieferart "Aussen" gepflegt
Artikle "Küchenschrank" hat Lieferart "Möbel" gepflegt
diese Lieferart soll im Warenkorb ausgegeben werden. Das funktioniert auch.
Im zweiten Schritt soll via IF Bedingung eine Text ausgegeben werden, wenn bei dem Artikel eine bestimmte Lieferart gepflegt ist und ausgegeben wird.
Ich hab schon einige Scriptschnipsel ausprobiert, aber ohne Erfolg. der letzte den ich versucht hab, der aber auch nicht funktioniert ist der untere:
Zur Vorabinfo: Das Attribut hat den Magento Code an_49
Ich finde nirgendwo wo eine Erklärung, zum einen wie die Syntax generell aussehn muss, wenn das Attribut Wert X hat und wie der Wert geschrieben sein muss:
- Muss ich die Value ID angeben, die in der MySQL-Datenbank für den Attribut-Wert gespeichert ist und in welcher Tabelle finde ich die?
- Muss ich den Wert entsprechend der Reihenfolge eingeben die der wert im Dropdown des Attributes im Backend hat, was 3 wäre?
- Kann ich irgendwie den Wert ansich als "Aussen" eingeben, wass ja eigentlich mit dem obigen Code-Block gehen sollte...
Vielleicht hab ich auch einfach nicht die richtigen Termini verwendet auf der Suche, jedenfalls hab ich nichts gefunden, was funktioniert hat.
Habt Ihr mir einen Tip, vielleicht auch für eine Onlinereferenz wo ich die ganze PHP-Syntaxen nachlesen kann?
Wäre prima
habe folgende Frage, bei der ich nicht weiterkomme:
Ich möchte beim mir im Magentowarenkorb folgendes umsetzen:
Bei einem Produkt, dass im Warenkorb liegt, wird der Wert des Attributes "Lieferart" ausgegeben, der für dieses Attribut gepflegt ist.
Beispiel:
Artikel "Kletterwand" hat Lieferart "Aussen" gepflegt
Artikle "Küchenschrank" hat Lieferart "Möbel" gepflegt
diese Lieferart soll im Warenkorb ausgegeben werden. Das funktioniert auch.
Im zweiten Schritt soll via IF Bedingung eine Text ausgegeben werden, wenn bei dem Artikel eine bestimmte Lieferart gepflegt ist und ausgegeben wird.
Ich hab schon einige Scriptschnipsel ausprobiert, aber ohne Erfolg. der letzte den ich versucht hab, der aber auch nicht funktioniert ist der untere:
Zur Vorabinfo: Das Attribut hat den Magento Code an_49
<?php $productAttribute = $_product->getAttributeText('an_49');?>
<?php if ($productAttribute == "Aussen");?>
<?php echo utf8_encode($this->__('Beispieltext'));?>
Ich finde nirgendwo wo eine Erklärung, zum einen wie die Syntax generell aussehn muss, wenn das Attribut Wert X hat und wie der Wert geschrieben sein muss:
- Muss ich die Value ID angeben, die in der MySQL-Datenbank für den Attribut-Wert gespeichert ist und in welcher Tabelle finde ich die?
- Muss ich den Wert entsprechend der Reihenfolge eingeben die der wert im Dropdown des Attributes im Backend hat, was 3 wäre?
- Kann ich irgendwie den Wert ansich als "Aussen" eingeben, wass ja eigentlich mit dem obigen Code-Block gehen sollte...
Vielleicht hab ich auch einfach nicht die richtigen Termini verwendet auf der Suche, jedenfalls hab ich nichts gefunden, was funktioniert hat.
Habt Ihr mir einen Tip, vielleicht auch für eine Onlinereferenz wo ich die ganze PHP-Syntaxen nachlesen kann?
Wäre prima
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 298714
Url: https://administrator.de/contentid/298714
Ausgedruckt am: 21.11.2024 um 22:11 Uhr
1 Kommentar
Ich kenne die internen Funktionen nicht von Magento, aber ich sehe hier ein Problem mit der IF Bedingung:
..es kann nicht schaden hier mit Debugausgaben zu arbeiten. zB.
var_dump( $_product ) existiert das Objekt und beinhaltet es die richtigen Informationen
var_dump( $productAttribute ) ist hier der Text "Aussen" enthalten oder eine ID ?;
var_dump( "{$this->__('Beispieltext')}" ) wird hier der Text angezeigt.
Tipp: XDebug
Bei Fragen, fragen.
<?php
$productAttribute = $_product->getAttributeText('an_49');
if ($productAttribute == "Aussen") {
echo utf8_encode($this->__('Beispieltext'));
}
?>
var_dump( $_product ) existiert das Objekt und beinhaltet es die richtigen Informationen
var_dump( $productAttribute ) ist hier der Text "Aussen" enthalten oder eine ID ?;
var_dump( "{$this->__('Beispieltext')}" ) wird hier der Text angezeigt.
Tipp: XDebug
Bei Fragen, fragen.