Category: Programming Quickies
Back in they day, I ran a Tumblr blog named Magento Quickies where I’d post shorter, less in-depth posts about my travels through Magento’s source code. This Programming Quickies categories is the successor to that Tumblr blog. You’ll find all the old Magento Quickies content here, as well as new short posts about programming in general.
This section has its own RSS feed, the old Magento Quickies feed should should be redirecting, and we’re cross posting notifications for new posts over to magento-quickies.tumblr.com. In other words, you shouldn’t need to know any of this, but the duct tape that keeps the internet held together isn’t aging well, so your mileage may vary.
Below you'll find all the Programming Quickies articles on the site, followed by a chronological listing of the same. You may also browse the 7 series directly via the following links. Pestle, Four Steps to Async Iterators, Checking in on OpenMage and Magento in 2020, Text Encoding and Unicode, Shopware's Development Environment, A Sentimental Gen-X Programmer Culls his Tech Books, and, Containers, Containers, Containers.
Welcome Magento Commerce Blog Readers
Welcome Magento Commerce Blog Readers! If you like these little tidbits of information you may be interested in the full length articles I write over on my personal blog. You should also checkout Pulse Storm’s Magento products. There’s Commerce Bug, a Magento debugging extension that demystifies the system for newbies, and [...]
astormQuery Bind Syntax
This one is for me, since I seem to forget Magento’s query binding syntax every time I stay away from it fore more than a week. $sql = "select foo from bar where baz = ?"; $query = Mage::getSingleton('core/resource')->getConnection('core_read') ->query($sql,array($value)); while($row = $query->fetch()) { var_dump($row); } [...]
astormGrabbing an Order’s Shipments
Grabbing an Order’s Shipments Includes a terse explanation of my heuristic for figuring out how to find something in Magento.
astormThe Orders Table
Magento Version: 1.5.0.1 More modern version of Magento have abandoned the EAV storage method for sales order information. Don’t worry, there’s still plenty of linked tables to trip you up! One of the most common misunderstandings I’ve seen is that there’s two tables that store primary order information. The more [...]
astormWatching the Watchers
Sometimes when you’re tracking down a bit of tricky Magento functionality, you need to quickly suss out not only what events have fired, but which observer methods are actually listening for the events that fired on a particular request. There’s no elegant way to doing this with Magento, but if you’re not above a little [...]
astormWatching the Watchers
Sometimes when you’re tracking down a bit of tricky Magento functionality, you need to quickly suss out not only what events have fired, but which observers methods are actually listening for the events that fired on a particular request. There’s no elegant way to doing this with Magento, but if you’re not above a [...]
astormMagento “Tweetorials”
Magento “Tweetorials” Vinai Kopp’s new tumblr blog to archive his Magento Tweetorials. Required reading.
astormMoving a Block without Recreating It
Moving a Block without Recreating It Based on a twitter conversation with VinaiKopp, I discovered you can pass a block’s insert method a string instead of a block object, and it will use the string as a block name to insert. Looks like you CAN teach an old dog new tricks.
astormBackward Compatibility and Typos are a Bitch
From the standard router class in Magento. /** * @deprecated * @see _includeControllerClass() */ protected function _inludeControllerClass($controllerFileName, $controllerClassName) { return $this->_includeControllerClass($controllerFileName, $controllerClassName); }
astormRemoving index.php From Magento’s URL
This isn’t even Magento 101, it’s Magento Middle School, but it accounts for 25% of the questions people email me about Magento. If you want to avoid URLs in the form of http://magento.example.com/index.php/foo/baz/bar and instead have http://magento.example.com/foo/baz/bar Make sure your webserver is setup toead .htaccess [...]
astorm1.6 resource models in a nutshell 1: Complete rewrite, core resource model class prefixes now seem to be <class-prefix>_Resource 1.6 resource models in a nutshell 2: Fallback to old resource models if rewrite is defined (supported via <deprecatedNode>) 1.6 resource models in a nutshell 3: MySQL specifics removed, new resource [...]
astormPerils of Caching
Perils of Caching If you’re trying to reuse Magento block classes that have caching enabled, there’s a few things you’ll want to be aware of.
astormOrder of Block Creation in Layout Updates
This one might be greek to people who haven’t read No Frills Magento Layout, but I’d like it spelled out so I don’t have to think about it again. (If you don’t own a copy, there are worse ways to learn Magento). When Magento is loading handles from the Layout Update XML Files into the package layout, these updates [...]
astorm