Manchmal kommt es vor, dass die Artikel im Warenkorb einfach verschwinden, wenn man z.B. die Warenkorbseite erneut lädt. Eine mögliche Ursache ist das Fehlen eines Bildes auf der Magento Warenkorbseite. Prüfen Sie also, ob alle Bilder vorhanden sind und wenn…
Gutschrift erstellen im Code (Magento 1)
Mit dem folgenden Code können Sie eine Gutschrift für eine Bestellung erstellen.
|
1 2 3 4 5 6 7 8 9 10 11 |
$invoices = array(); foreach ($this->getInvoiceCollection() as $invoice) { $invoices[] = $invoice; } $service = Mage::getModel('sales/service_order', $this); foreach ($invoices as $invoice) { $creditmemo = $service->prepareInvoiceCreditmemo($invoice); $creditmemo->register(); $creditmemo->save(); } |
Aktuelle Zeit und aktuelles Datum herausfinden (Magento 1)
Der folgende Code liefert das aktuelle Datum und die aktuelle Zeit.
|
1 |
$dateAndTime = date("Y-m-d H:i:s", Mage::getModel('core/date')->timestamp(time())); |
Parse error: syntax error, unexpected ‘endif’ (T_ENDIF) Problem beheben (Magento 1)
Manchmal bekommt man den folgenden Fehler angezeigt, wenn man eine Magento Produktseite öffnet: Parse error: syntax error, unexpected ‘endif’ (T_ENDIF) in … Das Problem hier liegt nicht direkt an Magento selber, vielmehr an der Konfiguration des Apache Servers, auf dem…
“Cannot send headers; headers already sent” Problem lösen (Magento 1)
Manchmal erhält man die Fehlermeldung “Cannot send headers; headers already sent in …” in der Logdatei. Eine mögliche Ursache können Leerzeichen oder eine Leerzeile hinter dem schließenden PHP Tag (?>) sein. Um das Problem zu lösen, öffnet man also die…
Statischen Block in CMS Seite einfügen (Magento 1)
Mit dieser Zeile kann man ganz einfach einen Magento Block in eine CMS Seite einfügen.
|
1 |
{{block type="cms/block" block_id="block_id"}} |
Kunden im Quellcode entsperren (Magento 1)
Mit diesem Code kann ein Kunde per Quellcode entsperrt werden:
|
1 |
$customer->setFailedLogins(0)->setLastFailedLogin(0)->save(); |
Bestellung mit Optionen im Code erstellen (Magento 1)
Eine Bestellung inkusive der indivduellen Optionen kann mit dem folgenden Code erstellt werden:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
$quote = Mage::getModel('sales/quote')->setStoreId(Mage::app()->getStore('default')->getId()); $quote->setCustomerEmail($mail); $product = Mage::getModel('catalog/product')->load($productId); $buyInfo = array( 'qty' => 1, 'options' => array($optionId => $optionValue) ); $quote->addProduct($product, new Varien_Object($buyInfo)); $addressData = array( 'firstname' => $firstName, 'lastname' => $lastName, 'street' => $street, 'city' => $city, 'postcode' => $postCode, 'telephone' => '-', 'country_id' => $country, 'region_id' => $regionId, ); $billingAddress = $quote->getBillingAddress()->addData($addressData); $shippingAddress = $quote->getShippingAddress()->addData($addressData); $shippingAddress->setCollectShippingRates(true)->collectShippingRates() ->setShippingMethod('flatrate_flatrate') ->setPaymentMethod('bankpayment'); $quote->getPayment()->importData(array('method' => 'bankpayment')); $quote->collectTotals()->save(); $service = Mage::getModel('sales/service_quote', $quote); $service->submitAll(); $order = $service->getOrder(); // ... |
Liste aller Länder für DropDown herausfinden (Magento 1)
Um eine Liste aller Länder zu bekommen, um diese dann z.B. in einer DropDown Liste anzuzeigen, kann der folgenden Code verwendet werden:
|
1 |
$countryList = Mage::getModel('directory/country')->getResourceCollection()->loadByStore()->toOptionArray(true); |
Model laden ohne direkte Verwendung von IDs (Magento 1)
Manchmal steht die ID zum Laden eines Magento Models nicht zur Verfügung. In einem solchen Fall, kann man auch folgendermaßen vorgehen:
|
1 |
$collectionData = Mage::getModel('modelname')->getCollection()->addFieldToFilter('attribute', 'attribute value'); |
Danch kann dann die Collection durchgegangen und das Model per ID geladen werden.