Is it compatible?
One of the questions we get asked a lot: Is Fooman extension X compatible with Vendor Y's Z extension? The answer to this question is unfortunately a typical software engineering answer - it depends. …
One of the questions we get asked a lot: Is Fooman extension X compatible with Vendor Y's Z extension? The answer to this question is unfortunately a typical software engineering answer - it depends. …
While I understand the reasoning behind Magento requiring login details to access repo.magento.com I believe it has had some unintended consequences. Due to the need to keep and manage secrets I have …
Prefer to watch rather than read? Check out the video from my Composer presentation at Magento Imagine 2017. Composer is a powerful tool for developers to harness the full potential of Magento 2. It…
Congratulations! Your marketing copy worked. The customer is excited and so are you. They come back saying the corporate buyers need something they can print for approval. Our new Magento extension --…
As Magento ventures further down the path into a more integrated solution as part of the Adobe family we are seeing more and more graphics like the below: Indicating we can easily mix and match Comme…
Magento itself has documentation available on how to upgrade to a newer version of Magento, including using the Web Setup Wizard. However the guides are a bit light on details when you are also using …
There are a few things that come included in Magento 2 which help in keeping your admin settings easy to use. Hide unused settings First - it's always a good idea to remove as many settings as possibl…
In this Q&A series, we speak to Magento developers to share what they’ve learned about Magento 2 with the community. This month, we spoke to Muliadi Jeo from Magento Professional Solution Partne…
Small merchants using Magento. Everyone has an opinion, and they’re not all favourable. Of the 200,000+ online stores that use Magento, a lot of these are smaller merchants. I’ve witnessed small mer…
I found this treasure hidden in the Magento Github repo describing succinctly on how to work with Magento's configuration files, namely app/etc/config.php and app/etc/env.php. Reposting it here so tha…
As a preface this blog post is written by someone that I would classify as active lurker. I have been following the progress on Github and follow the discussion in the Magento EngCom #pwa slack channe…
One of the things that is more complicated than it should be in Magento 2 is the installation process of extensions. The installation of extensions is closely tied to the deployment process itself wh…
Not many people are aware yet that Magento 2's Web Setup Wizard is a UI sitting on top of Composer. Because of this you do not need to use the graphical interface if you prefer to use the command line…
Magento 2 comes with a range of compilation commands which are meant to be run as part of your build step. However as there are a few different commands it's easy to forget one. The easiest way I foun…
When it comes to eCommerce, credit card processing fees are a necessary evil. That 2.9% and 30 cents a pop is just the cost of doing business. Not anymore. We have the perfect solution for your Magent…
Are you still manually importing your eCommerce store records into Xero? Well, stop. With Fooman Connect: Xero, you'll save so much time you may need a hobby. Not only will you save time, you’ll save…
There are lots of different options around to set up your local development environment and I'd hazard a guess no two development environments are the same. Most of my Magento development work I do is…
Whether you write custom modules for individual clients or sell extensions on the Magento Marketplace - Magento 2 extension development is a big change from M1. I started writing Fooman’s Magento 2 e…
When is changing the default Magento 2 order numbering system useful - or not useful? Should you change the order/invoice number via database modification or install an extension to do the job? We ta…
A quick list containing the first and latest version of the main Magento 2 branches and their respective supported PHP versions. Magento Version Supported PHP Versions Link to Source 2.0.0 ~5.5…
Magento 2.2 has been announced back in April at Imagine. Since then a steady stream of pull requests and changes have made it into the Magento code base. With a targetted release date in September, Ma…
You may have seen the recent flurry of posts around the future of Magento Open Source, and talk of a posible fork. It started with the post "The Future of Magento" by a group of well respected and lon…
You can run Magento 2 in three different modes: default, developer and production. Magento 2 allows you to define which mode to run via a server variable (MAGE_MODE). This can be seen in the below exa…
Functional testing is a software testing process used within software development in which software is tested to ensure that it conforms with all requirements. The concept The idea of a functional t…
In my recent Imagine presentation I talked about keeping your Magento 2 extensions in the vendor folder. The good news is that it is fairly straight forward to convert your extension from one location…
Sometimes you need to quickly check something on the latest development version of Magento 2. Especially if you haven't previously pulled the repository from Github the following small change will red…
We have been working hard behind the scenes since the first Magento 2.4.4 beta releases to be able to support Magento 2.4.4 including support for Php 8.1 from the day of the general release. There is …
It’s hard to believe that Magento 2 is already approaching its second birthday. Builtwith estimates there are around 16,000 folks currently using Magento 2. But there’s also a massive number of people…
Triggered by a recent discussion on Slack and noticing this latest Pull Request to fix some timezone handling specific code in the Magento 2 framework (Github PR) it seems to confirm a long held suspi…
In this Q&A, we chat to Pere Hospital, Co-Founder and CTO of Managed Magento Hosting Platform Cloudways. This interview is a little different - as extension developers we normally don't have a lo…
When it comes to installing extensions for Magento 2 you have a few different options available. I'll talk through each of those options from a developer and end user perspective. In the end I'll summ…
For a range of workflow actions during Magento's order processing you might be interested in, hooking into a paid invoice, is one of the more interesting ones. Luckily for us Magento emits the sales_o…
Magento is forging ahead with the development of PWA Studio which is supposed to bring us an easier development experience to create compelling storefronts for Magento 2. Last month we held a small ge…
Magento has always been used around the world with the community providing translations for different locales. With Magento 2 this is no different and the translation efforts can be found on Crowdin.…
Major releases like the most recent 2.4.0 Magento upgrade are busy times at Fooman. We strive to have all our extensions tested and verified working as soon as you need them. As some of you are always…
You’re in the business of making things. You’re a creator not an eCommerce administrator. The bad part of becoming popular is new clients sometimes want more -- like a pdf of their invoice. If you’ve …
Extension Conflicts in Magento 1 vs Magento 2 In the Magento 1 world, extension conflicts are the norm. Once you have a certain number of extensions installed, it's just a matter of time until you nee…
TL;DR: Our package versioning scheme will change to a similar approach Magento uses. The installed extension package will become a metapackage which is no longer going to be semantically versioned. T…
One of the cornerstones of Magento has always been the extensibility of the platform. Magento 2 is no different, but some of the approaches to customising Magento have changed substantially with the…
Magento 2 uses Swagger to automatically generate documentation for its REST API. You can view a published version on Magento devdocs. What's even better - Swagger is shipped with each installed instan…
The bin/magento command is the entry point to working with Magento 2's command line tasks. Prompted by a couple of recent tweets I thought I quickly write down a couple of tips to speed up working wit…
When working with Magento 2 depending on where you look there are different coding standards one might pick to follow: PSR-2 (Magento is part of PHP-FIG after all) MEQP-2 (Marketplace) ECG-2 (Expert …
While working with Magento 2 you will be using the command line a lot more often. I have started a collection of commands that have come in handy while working on various client installations: Tip #1 …
Most know that Sherrie who, as Magento's Commuity Manager, runs the Magento Masters program, keeps a giant spreadsheet on which all community contributions are recognised throughout the year. By some …
There are thousands of Magento 1 extensions listed on Connect (soon to be rebranded as Marketplace), and already 750 Magento 2 extensions on the new Marketplace. With so many on offer, it’s easy to go…
It's less than 48 hours to go before my #RoadToImagine kicks off! This year will be slightly different for me as I won't be on stage speaking. It definitely removed some anxiety in the lead up to the …
With all the new stuff coming to Magento 2.3.0 you might want to try out the upgrade process to the latest 2.3.0-alpha release. Before you start, make sure that your existing store is running on php 7…
One of the more exciting improvements included in Magento 2.4.2 is the support of Composer 2.0. In our tests, this brought a substantial speed increase and less memory usage to Composer commands run a…
When working with PWA Studio you have two ways to set up your project: Clone the repository Use the scaffold command yarn create @magento/pwa to create your starting project When using 1. getting t…
Bulk orders are awesome. But it can get really tricky, especially if your store is seasonal. Wouldn’t it be nice to save time when your Magento-powered store gets busy? Of course it would. With Fooman…
When an end user has taken an action in any application it's a good idea to provide the user feedback on that action. So for example if the save product button has been clicked in Magento 2 you would …
Triggered by a recent bug report for our Order Number Customiser extension I had to work out a way to run concurrent tests. Essentially for orders placed the very same second a duplicate order number …
Magento Imagine is always a good time to assess how far we've come in the last year and where the road is leading for the future. Others have already done a great job of covering the conference and ke…
Inspired by Karen from ShipperHQ I have been working on a series to provide a framework for getting a Magento 2 site up and running fast, starting from scratch. Preface If you are in a hurry needing t…
Magento Marketplace has been up and running for a while but I think there is still some confusion out there as to what the different levels of validation actually do and how you can prepare yourself f…
We have been working hard behind the scenes since the first Magento 2.4.4 beta releases to be able to support Magento 2.4.4 including support for Php 8.1 from the day of the general release. There is …
You may have seen the recent flurry of posts around the future of Magento Open Source, and talk of a posible fork. It started with the post "The Future of Magento" by a group of well respected and lon…
As Magento ventures further down the path into a more integrated solution as part of the Adobe family we are seeing more and more graphics like the below: Indicating we can easily mix and match Comme…
Small, quick improvements to make Magento 2 development easier.
Composer, testing frameworks and all the techy Magento 2 development details.
Tips to plan a smart and smooth migration.
How can you choose trusted Magento extensions?
Want to develop Magento extensions? Curious what life is like as an extension developer?
Life in the #magento community.