Blog

File upload in Magento 2 store configuration

File upload in Magento 2 store configuration

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

Magento 2 UI components and listener

Magento 2 UI components and listener

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

Your Magento shop deserves a custom tailored theme!

Your Magento shop deserves a custom tailored theme!

Getting your store up is a process. One which starts with a revelation that, if you want to make things work in the long run, you’ll need a webshop. An online place for reaching new and informing existing customers. For them, it’s a brand new channel where they can buy your products. For you, it’s a strategic decision. Why? Because the idea behind that action is growing your business.

But, apart from choosing the platform or the hosting, you should also think about the visual appeal of your store. In this interview, Marko Briševac, one of Inchoo designers, answers the most frequent questions we get from prospective clients. Read more to find out what’s it all about!

Read more

Forgot about “Forgot your Password” page?

Forgot about “Forgot your Password” page?

We’ve analysed over 1.5 million sessions that happened in the last 30 days on some USA, UK, and Germany based eCommerce websites to find out the average percentage of logged-in customers that used the “Forgot your password” e-mail password reset functionality in Magento.

Read more

We’ve developed a Croatian Language Pack for Magento 2

We’ve developed a Croatian Language Pack for Magento 2

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

How to keep your CMS blocks organized (and not go insane)

How to keep your CMS blocks organized (and not go insane)

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.

Read more

Mitigating Facebook’s “x-fb-http-engine: Liger” site hammering using Apache or nginx

Mitigating Facebook’s “x-fb-http-engine: Liger” site hammering using Apache or nginx

Facebook is using a sort of web page prerendering mechanism in it’s in-app browser for mobile users [see disclosure here]. It is used by Facebook’s in-app browser to speed up page rendering for web link content shared on Facebook. But it can cause serious headaches, and this post should explain how to mitigate it with Apache or nginx.

Read more

Extending Pimcore with plugins

Extending Pimcore with plugins

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

We moved to a new office. Finally!

Inchoo Office Library

If you are following us on social media channels, you already noticed that we moved to a new office. Every one we had before was a place we enjoyed working in. This time around it was different. We have a place that inspires us.

Read more

Custom API for Magento 2

Custom API for Magento 2

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

Organizing a conference? Here are practical tips that will help

Organizing a conference? Here are practical tips that will help

Office Management‘s job is to organize and supervise all administrative activities required for the smooth and efficient operation of the company. However, Inchoo‘s Office Management crew also manages some internal projects or participates in them. Since the beginning of Inchoo, 8 years ago, the largest internal project certainly was Developers Paradise conference, and I had the honour of being in charge for the organization. We already wrote about the conference, but in this article I would like to reflect more on the organizational aspects and the challenges we faced and how we resolved them.

Read more

Magento 2 API usage with examples

Magento 2 API usage with examples

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

Development and design under the same roof

Development and design under the same roof

Building a web shop on Magento is challenging. When you see a feature that looks “so simple that you could do it”, it was usually not as simple to build it as you think. To create that “simple” thing designer had to spend a great amount of time finding the right solution. After all, creating a feature which draws on that kind of comment means translating something very unorganized and complex to something simple and understandable. On the other hand, developer had to spend a lot of hours translating that solution into code. Designer and developer can find that beautiful solution by communicating, which is crucial in this case. And that kind of communication, the one which yields incredible and neat results, would be much harder if a designer and developer are not placed in the same location.

Read more

Working with CSS in your first Magento 2 project

Working with CSS in your first Magento 2 project

So, you’ve finally managed to create your new theme in Magento 2. After a few hours of swearing and sweating, you’ve successfully created all necessary files, defined fallback to Luma (you can blame Luma for all the mess that will happen later on), registered your theme within the system, activated it in the Magento Administration…aaaand…you are ready to go!

But, what now?

Read more

Getting started with CSS Flexbox

Getting started with CSS Flexbox

The CSS3 Flexible Box Layout, or as a shorter and more widely recognised term – Flexbox, is a CSS box model optimised for designing user interface layout.

It is the addition to the four basic layout modes, previously defined in CSS: block layout, inline layout, table layout, and positioned layout. But, in contrast to these earlier ones, this is the first CSS module designed for laying out complex pages.

Read more

How to manage clients, pressure and stress

How to manage clients, pressure and stress

How to handle delicate situations and keep your clients trust? Here are few practical points that can help both you and your client bridge the troubled water and further improve your relation.

Read more

Your website is a slider

Your website is a slider

Whenever you speak to a conversion rate optimization specialist or internet marketer in general regarding sliders you’ll hear a big rant about them. They’re bad for usability. But why do we still see so many sliders all around the web then?

Read more

Extending Magento 2 default JS components

Extending Magento 2 default JS components

Since Magento 2 is out for quite some time now and new projects based on the platform are rapidly approaching, there is no doubt that we, as developers, need to be adequately prepared for the challenge.

In this post I will demonstrate how to deal with platform’s default javascript components (widget instances). More precisely, a javascript component responsible for the site main navigation functioning. If you’re interested, just keep reading.

Read more

Can Sketch help us improve our design workflow?

Can Sketch help us improve our design workflow?

Designers are constantly trying to develop a healthy design process by experimenting with tools in an attempt to find the one that works best.

I’ve been using Photoshop as my primary design tool for almost 10 years, and the fact that Photoshop wasn’t created for UI design was never a real problem. Why? Because Adobe was always throwing new features to support UI design. The main problem is that Photoshop’s engine was never optimized for UI design, it is huge, memory-consuming, and many designers weren’t pleased with it’s performance.

The more large files you work on, the more you can get stuck and that was the main reason to look out for new and better alternatives to an existing design workflow.

Read more

Meet Magento Association introduces exciting changes – Meet Magento 2.0

Meet Magento Association introduces exciting changes – Meet Magento 2.0

Have you heard of Meet Magento Association – an amazing group of individuals who have done incredible things for the community around Magento, being an integral part of making it into what it’s become?

They recently made some significant changes to the organization. Here’s the latest scoop on what’s new and how it affects the ecosystem!

Read more

9 pieces of advice on how to win a lead

9 pieces of advice on how to win a lead

My first encounter with “sales” was in the primary school where I often spoke in the name of the class to call off the planned exam or to switch a verbal assignment for the next day. It hasn’t been always a successful shot, but it was worth trying. 🙂

I feel like this little experience helped me prepare for my current role – Sales Assistant at Inchoo.

Now, being some time with Inchoo and communicating with leads and clients from all over the world on daily basis, I’ve gained a decent experience even though I’ve been working here for just 8 months. With that in my mind, I came up with an idea to share a few thoughts (you can call it – tips) on how to win a prospective client.

Read more

Tuning Redis for extra Magento performance

Tuning Redis for extra Magento performance

Using Redis is a quick & easy way to improve Magento performance. Setting it up is easy, performance benefits are great, and we never had problems with it – it’s fire and forget. Inchoo already covered that in detail: https://inchoo.net/magento/using-redis-cache-backend-and-session-storage-in-magento/.

But, come on! Are we really going to races with the stock engine? Are we tuning Magento performance or what? Redis is fast by default, but it can get a lot faster. Read on to see how.

Read more