Magento 2 and Composer: Tutorial preview – Session Digital Speaking of James Cowie, here’s his video introduction to Magento 2, as well as a more in depth discussion of Magento 2 and composer.
astorm
The following steps are, as of October 22, 2015, the quickest way to get a working version of Magento 2 up and running without checking out the source from GitHub. The following will install the merchant beta – which is a stable, mostly feature complete version of Magento 2. There have been changes to the Magento 2 source since [...]
astorm
Here’s another gotcha to be careful of when using the sales/quote model objects. If you pass the following methods setBillingAddress, setShippingAddress, assignCustomerWithAddressChange an existing quote address object, these methods will reassign the address to the current quote (removing it from the old quote). If you were [...]
astorm
Here’s another caution sign if you’re using the sales/quote object’s deleteItem or removeItem method. If you look at the code that marks an item for deletion $item->isDeleted(true); if ($item->getHasChildren()) { foreach ($item->getChildren() as $child) { $child->isDeleted(true); } } $parent = [...]
astorm
I’m working on an in-depth ERP project, and ran into a strange problem where I had a reference to a quote object that refused to delete its items. I could run something like this foreach($quote->getItemsCollection() as $item) { if("item meets my criteria") { $quote->deleteItem($item); } } [...]
astorm
If you’ve spent anytime doing Magento 1 module development, you’re probably familiar with the _validateControllerClassName method. This method is where Magento 1 generates and validates paths to possible controller class matches during routing. This method is gone in Magento 2 – partially due to the PSR-0 autoloader [...]
astorm
In Magento 1, it was possible to register a global variable with the static registry method. Mage::register('some_var', 'some value'); var_dump(Mage::registry('some_var')); Many extensions, include core Magento extensions, ended up using this from controller action methods to pass variables into the views. While its future is uncertain [...]
astorm
The Magento 2 developer documentation is coming along at a good clip. Unlike round one, the company behind Magento has a dedicated team of profesional technology writeres who are cranking out documents based on interviews with the core team, and feedback from the merchant beta. I’ve seem some complaints that the developer [...]
astorm
Every so often in my small Magento 2 experiments, I’ll hit a point where an error like this starts popping up. Fatal error: Cannot redeclare class PulsetormHelloworldObserversBlock in /path/to/magento/app/code/Pulsestorm/Helloworld/Observers/Block.php on line 4 I’ll scratch my head for a while, wonder what’s going on, [...]
astorm
Debugging Varnish VCL configuration files | Midwestern Mac, LLC Over the past few years varnish has become the “go to” way for Magento systems to paper over serious backend performance problems – which means varnish debugging is quickly becoming a must have skill for Magento developers working at all levels of [...]
astorm
Magento 2: How to Check if a Module’s Installed Hint: Inject Magento’s Magento/Framework/Module/Manager object.
astorm
Magento Patches Finder Nice and simple web application that will let you say Hey, I’m using THIS version of Magento CE and the application will say back Then here’s the security patches you want It’s a pity that the politics of a company in transition don’t let Varien/Magento Inc./Ebay Enterprises/etc. release [...]
astorm
Just a quick note that Commerce Bug 2.5 is out, official boring press release-ish announcement here, free upgrade for registered users, and a screencast of the one new feature below.
astorm
AOEpeople/MageTestStand This tool is used to build a minimal Magento environment that allows to run PHPUnit tests for a Magento module on Travis CI.
astorm
clockworkgeek/MagentoTagToConnect Clever bit of programming from clockworkgeek (Daniel Deady) that lets you turn any Magento project with a composer.json file into a Magento Connect package.
astorm
Where Magento Connect does Check for Permissions Magento Connect, File Permissions, and myself have a rocky, inconsistent relationship. This one’s the opposite of my usual complaints – if Connect’s saying it can’t install itself due to file file permissions errors, here’s where to check which directories it [...]
astorm
Magento Sellers Guide to Sales Tax A relatively straight forward article about how to collect sales tax for an ecommerce business. It’s remarkable how much hand waving there is about this from agencies representing themselves as ecommerce experts.
astorm
If Magento 2 is your first introduction to PHP namespaces, here’s one small thought technology that might help. Consider the following namespace FooBaz; class Bar { } The above does not define a class named Bar. It defines a class named “FooBazBar”. That’s how PHP sees the class internally, and once you start [...]
astorm
If you’re trying to use the browser setup workflow in the Magento 2 beta released in December of 2014, make sure your web server is using the index.php in the root of the project and not the pub/index.php file. It’s unclear which index.php is “the right” file to point to – the pub folder seems to be an [...]
astorm
If you’re using Vagrant to manage your Magento 2 installations, you’ll want to be careful with file permissions. By default, it appears that Vagrant’s synced folder setup won’t allow the apache/web user to create folders with permissions elevated higher than the default sync share. Dropping in some custom mount [...]
astorm