Keeping an eye on small things in eCommerce projects

When managing projects, one usually focuses on big things: biggest costs, biggest features, biggest risks, etc. The same is with building an eCommerce site – the biggest, most important things are, well, most important.

But large topics are not the be-all and end-all of the project.

In this post, we will illustrate how tiny issues can have an outsized influence on the project. Through analysis of several examples from our experience, we will try to understand how small perturbations shape the course of the project.

So let’s start with something totally relevant, let’s start with – Napoleon.

Read more

Implementing javascript minifier

Implementing javascript minimization in Magento can help your page load time by compressing your javascript files and making them smaller for users to download. Along with CSS minimisation it can be a great asset for decreasing page loading time.

In this article I will primary cover where minimization should be implemented, since writing a full code for dependable minifier is not a small task.

Read more

Implement rel alternate links in Magento

With the rise of E-commerce, selling goods to customers around the globe became easier than ever before. Internet has no borders, and anyone can ‘walk into your store’ whilst being in comfort of his own home.

An increasing need for multilingual stores has appeared. You might want your customers to be able to browse your store in their own language.

Read more

Magento functional testing with casper.js

Testing can be boring and time consuming task. So why don’t we use some tools and make our lives easier? In Magento there are numerous “boring” tasks that need to be done after the first install and then again when you test a new functionality. For example, create a test account, add product to cart, go trough checkout process, add product to wishlist, compare etc.

Read more

301 redirects vs canonical links in Magento

What can you do to prevent duplicated content of products from different stores?

Recently we’ve received one inquiry to optimize an existing Magento website.
Shortly, there are 2 stores with codes: store1 and store2. Store code is included in the URL.

While we were working on the optimization, the client has reported that some of the products show in both: store1 and store2 but they should be visible only in one of those stores (imagine that you’re on store1 and you see there some related products but from store2).

Read more

How to analyse 3rd party Magento extension

Every now and then client hires us to do a site assessment for his existing Magento powered web shop. One of the reasons for this is the feeling of web store getting slower and more bloated with each new extension or modification they make on Magento.

Based on my experience, I will describe an approach we at Inchoo take for analysing 3rd party Magento extension.

Read more

Expose to the world that PHP is installed on the server. Or not!

Recently my colleague asked me do I know what will happen if you type in URL “?=PHPE9568F34-D428-11d2-A769-00AA001ACF42“. I forgot about that and I didn’t know the answer instantly. Probably in time of learning PHP and related stuff I’ve noticed that query param and I didn’t know what consequences it could exploit. Maybe in that time I said… OK you can see PHP logo but who cares!? But recently when I saw that and when I looked once again HTTP header I saw what security issue could be if you echo to the world your PHP version (X-Powered-By:) and server header info (Server:). Probably all of you saw some “hacker websites” where you can find exploits for various CMS/Frameworks with their versions and platforms on which exploits could be accomplish. So probably you can now guess in which direction this post will go.

Read more