Magento 2 Event Framework - Diagrams

Magento events and observers are a good old way of extending Magento. This approach originated from Magento 1 and is well-known beyond the Magento community and platform. It follows an observer design pattern and has different implementation and variations in different frameworks. This article covers how the Event Framework was implemented in Magento and how it is recommended to be used by the Magento Development Team..

Multi-Source Inventory in Magento 2.3

Magento 2.3 GA release has finally landed.It is one of the most awaited releases Magento has ever seen, and it’s a thrilling moment for us at Atwix. Not only can our clients now benefit from all the new features that are available in 2.3, but we can also see live features that our team developed, working closely with other community contributors as well as the Magento Community Engineering team.

How to add custom layout handle to category in Magento 2

In order to add a custom layout handle to a category page, a (basic) Magento 2 module with these additional files and content is needed:

1. The events.xml file to “subscribe” to the event and say which observer should be fired
2. An observer that adds a new layout handle to the page
3. A layout file that adds needed changes to the page

JavaScript bundling is an optimization technique you can use to reduce the number of server requests for JavaScript files. It is achieved by merging multiple JavaScript files together into one file to reduce the number of page requests. By default, Magento 2 allows excluding the particular JavaScript files from bundling by specifying the corresponding file in exclude node of the etc/view.xml file for a theme. However, sometimes it’s not enough.

The myth of soft skills

Recently more and more people online bring up the topic of soft skills, its importance at the workplace and influence on the overall hierarchy and mood within the company.
But today I would like to cover its impact on the general productivity and draw a line between soft and so-called “hard skills” and also I would like to dispel a myth of importance soft skills only for managers.

Create Cart Price Rule and generate Coupon Codes programmatically

Magento offers a marketing feature called Cart Price Rules, which allows for the application of discounts to items in the shopping cart based on a set of conditions. The discount can be applied automatically as soon as the conditions are met, or when the customer enters a valid coupon code. Coupon codes can be generated for each cart price rule via the admin panel in Marketing -> Cart Price Rulessection. However, sometimes we need to automate this process. Let’s find out how to create a cart price rule and generate coupon codes programmatically in Magento 2.

The Magento page cache library contains a simple PHP reverse proxy that enables page content caching. There are two types of distinguished content: private and public.

The “private” content is being served for each user separately and represents the personalized data of a customer. E.g. shopping cart, wishlist, customer addresses, notification messages. This data should not be cached on the server side, and should not be shown to more than one user. The private content is stored on the client’s side by Customer Data JS component (Magento_Customer/js/customer-data.js). However, this is a topic for another blog post. Today we will focus on the second content type – public content, or rather the cacheable content and its variations in terms of customer grouping.