Skip to content

Instantly share code, notes, and snippets.

View bka's full-sized avatar

Bernhard bka

View GitHub Profile
@bka
bka / Magento2 load product
Created January 4, 2016 13:21
Magento2 load product
$appState = $objectManager->get("Magento\Framework\App\State")
$appState->setAreaCode("frontend")
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$productFactory = $objectManager->create("\Magento\Catalog\Model\ProductFactory");
$product = $productFactory->create()
$product->load(1)
$product->getData()
<VirtualHost *:80>
ServerName mage2.dev
ProxyPreserveHost On
ProxyPass / http://mage2.dev:8039/
ProxyPassReverse / http://mage2.dev:8039/
</VirtualHost>
XDEBUG_CONFIG="idekey=vim" php -dxdebug.remote_host=127.0.0.1 -dxdebug.remote_enable=on /usr/local/bin/phpunit -c phpunit.xml
<?xml version="1.0"?>
<page layout="1column" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<referenceContainer name='sidebar.main' remove='true'/>
<referenceContainer name='catalog.leftnav' remove='true'/>
<referenceContainer name='page.main.title' remove='true'/>
<referenceBlock name='category.products.list'>
<action method='setTemplate'>
<argument name='template' xsi:type='string'>Vendor_Module::product/list.phtml</argument>
// Magento\Cms\Model\PageFactory
$page = $this->pageFactory->create();
$page->setTitle("Impressum");
$page->setContent("<h1>Impressum</h1><p>Edit Me :)</p>");
$page->setIdentifier('impressum');
$page->setStoreId(0);
$page->setPageLayout("1column");
$page->save();
$componentReigstrar = $this->objectManager->get('\Magento\Framework\Component\ComponentRegistrarInterface');
$path = $componentReigstrar->getPath(ComponentRegistrar::MODULE, 'Vendor_Modulename');
echo update_product("http://magento2.local/index.php/rest/V1/products/test");
// following option CURLOPT_PUT breaks magento with
// {"message":"%fieldName is a required field.","parameters":{"fieldName":"product"},
curl_setopt($ch, CURLOPT_PUT, 1 );
// use CURLOPT_CUSTOMREQUEST instead
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
@bka
bka / gist:1eea309a5ff7b3d71f5f978eecb179f6
Created June 24, 2016 06:34
Magento: send order mail on console
<?php
include 'app/Mage.php';
Mage::app('default');
Mage::app()->setCurrentStore(1);
Mage::app()->getTranslator()->init('frontend', true);
$_order = Mage::getModel('sales/order')->load($argv[1]);
$_order->sendNewOrderEmail();
@bka
bka / gist:ece3daf7b8d0d4373a98740287621590
Created August 8, 2016 15:32
magerun2 dev console objectmanager
$ bin/n98-magerun2.phar dev:console
>>> $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
=> Magento\Framework\ObjectManager\ObjectManager {#15223}
>>> $appState = $objectManager->get("Magento\Framework\App\State")
=> Magento\Framework\App\State {#15471}
>>> $appState->setAreaCode("frontend")
=> null
>>> $a = $objectManager->get('Magento\Catalog\Block\Product\ListProduct')
=> Magento\Catalog\Block\Product\ListProduct\Interceptor {#16073
+"imageBuilder": Magento\Catalog\Block\Product\ImageBuilder {#16069},
@bka
bka / gist:4d5ace8ab501d353115b2f67fb9280e5
Created August 30, 2016 09:27
Attribute Filterable in Search
$productAttributeRepository = $this->objectManager->get('\Magento\Catalog\Model\Product\Attribute\Repository');
$attr = $productAttributeRepository->get('color');
$attr->setIsFilterableInSearch('0');
$attr->save();