Compared to its previous version, Magento 2 came out with a new concept of dependency injection where classes inject dependencies (different objects) for an object instead of that object manually creating them internally. That way overriding and manipulating with classes is much easier and allows us more ways of extending the native functionalities.Read more
Despite the good amount of attributes offered in Magento by default, there is often a need to add some new ones to the system for a particular EAV entity. Today I’m going to show you how to programmatically add a new category attribute.Read more
This article will show you how to set up custom HTML wrapping element around “content” reference (but can be applied to any other reference in any other module). Let’s get started.Read more
In one of our previous articles we learned how to create a widget. Now we will see how we can create a custom one, or even better, how to extend the core one. For this example I picked default catalog product listing widget that I will extend with sorting fields for better customization of this widget.Read more
One of the best parts in Magento is its admin interface. There is support for all kinds of input types (text fields, radio buttons, dropdowns, multiple selects, etc.), that can be stored in various ways (plain, encrypted, serialized), and displayed in numerous ways (grids, forms, simple fields, images).
What makes Magento great is the possibility to extend this default interface (especially store configuration part), and add our own fields easily. Let’s extend it with a custom file upload field.Read more
In this short and simple example we will explain how to create listener in Magento 2 UI component. We will explain it on built in Magento 2 UI component Columns which use component Magento_Ui/js/grid/listing (part of admin grid interface).Read more
eCommerce is rapidly increasing in the world, but Croatian market was a little behind that trend. Why? Maybe it’s our distrustful nature to buy something online. Who knows. But the good thing is – we at Croatia are slowly but surely discovering the benefits of online shopping. Both as consumers and as shop owners.
Wether you are big or small, on Magento or on some other platform, goal is the same. Increasing sales and keeping customers happy and loyal. One of the ways to achieve that is by shop localization.Read more
Head on over to Magento dashboard in your store and take a look at CMS blocks. How many CMS blocks have you got? Can you tell which of the blocks are being used on site and which are currently not active or can be safely removed? Can you pick a random CMS block and instantly know what it is and where to find it on site? In this article we’re going to cover a powerful way of organizing, searching and filtering CMS blocks by simply naming them in a specific way. And the best part is that it works out of the box in vanilla Magento without any extensions.
After half a year we are back on Pimcore development. Since last time, Pimcore 4 has been released and it’s already in 4.3 version. I have been writing about portlets and now it is time to go much deeper in extending Pimcore. First of all, best reference for Pimcore development is their own documentation, you can find it at https://www.pimcore.org/wiki/. Pimcore can be extended with plugins, or by writing code in website folder, but we’ll cover plugins.Read more
With almost 10 months after Magento 2 has been officially launched, Google has indexed a decent number of articles related to creating themes, fallback mechanisms and LESS compiling. Great job, community! =). But there was not a single one on how to create your own Grunt task. =(Read more
We have already went through on how to configure integration and utilize Magento apis. But let’s see how to make our own module with custom API calls.Read more
In case you haven’t noticed, Magento 2 recently marked all model CRUD operations as deprecated, in favor of following repository pattern. This article will be a short overview for those who are new to this concept.Read more
We’re going to build a very simple module in Magento 2. When finished, the module’s output will say “Hello world!” in the block content on a custom frontend route.Read more
Magento 2 supports REST (Representational State Transfer) and SOAP (Simple Object Access Protocol), much like the old version of Magento we were used to. Official documentation is mostly based on raw curl request without examples in some specific language. PHP is what we do and there will be many people using it as well, so we tried to give you real PHP examples of how to connect and use Magento 2 API.Read more