Blog

DevTools - Emulation features September 28th, 2015

When making changes to the Shopware 5 Responsive theme, all different viewport sizes have to be considered and adjusted in order to be correctly displayed on every device the user is visiting the shop with. This is a new step in the Shopware theme development and fundamentally different than in Shopware 4 templates, where static widths and fixed containers were the main thing a developer had to worry about. Device...
Read more...

Generating plugins with the CLI tools September 1st, 2015

Creating plugins can be quite repetitive - if there was just a way to generate the base structure automatically... Well - there is a tool for that... The CLI tools A year ago we announced the Shopware CLI tools - a console application to help you with your daily Shopware work, e.g. install Shopware from GitHub or a release package. It also supports installing plugins on the fly, which makes the daily development...
Read more...

Bootstrapping Shopware - The dispatch loop August 26th, 2015

When writing Shopware plugins, you will usually use events like Enlight_Controller_Dispatcher_ControllerPath_Frontend_Test or Enlight_Controller_Action_PreDispatch_Frontend_Listing. But where do those names originate from and what is the "big picture" behind it? This post will explain what happens "behind the scenes", when Shopware boots up and handles a request. Dispatch Loop Dispatching is the process of handling a Request object, extracting the relevant Module, Controller and Action from it, instantiating the correct controller and making this controller handle the request. As...
Read more...

The Shopware SEO engine August 11th, 2015

The term "SEO" summarizes various features and functionalities which targeted at increasing the ranking of a given website within search engines. This will usually include semantic URLs, rich snippets, meta tags and search engine optimized HTML structures and texts. While most of these techniques are not that interesting from a technical perspective, the handling of "speaking URLs" ("SEO URLs", "fanzy URLs") usually involves the routing of requests as well as the generation of the...
Read more...

AOP August 4th, 2015

In the last blog post I discussed cross cutting concerns and ways to address them in PHP. In this post I want to have a look at AOP and try to integrate the GO AOP PHP library in Shopware. AOP AOP (aspect-oriented programming) is a programming paradigm which is usually attributed to Gregor Kiczales and his colleagues. The whole concept is about addressing cross-cutting concerns properly - not by choosing design patterns, but by having...
Read more...

Cross cutting concerns July 23rd, 2015

In the last blog post I discussed the Shopware hook system and also mentioned that hooks are technically a way to address cross cutting concerns with an AOP approach. In this blog entry I want to have a deeper look into cross cutting concerns and ways to address them in PHP. What is a "concern"? Talking about cross cutting concerns raises the question: what are concerns in the first place? In the context of...
Read more...

Create delta updates using rsync July 16th, 2015

To create shopware update packages we use the well-known unix utility rsync. Delta update A delta update is a update that contains only the files that have changed. This results in smaller update packages, faster downloads and a overall better update experience. To create a new update package we first have to create the corresponding install package for that release. Also we need the oldest install package we want to allow an delta...
Read more...

Understanding the Shopware hook system June 9th, 2015

Shopware was built with plugin developers in mind, so there are powerful ways to modify the default behaviour of the system without losing backward compatibility. In this post I want to discuss the technical details of Shopware's hook system. Hook? Generally there are several ways to extend Shopware. By default we distinguish global events, application events and hooks (for a brief overview see the plugin quick start guide). In addition to that, you are...
Read more...

Never stop refactoring May 5th, 2015

Hi, my name is Oliver Skroblin, developer at shopware AG. In this blog entry, I want to talk about the refactored sections in Shopware 5 and further refactorings coming in the near future. Bundles With Shopware 5, we have taken the opportunity to refactor the core classes. However, we didn't just rewrite the classes using the latest technological standards, but also modernized the underlying architecture of the core. It was our goal to...
Read more...

Unboxing - Meta - Augmented Reality Glasses May 4th, 2015

Welcome everybody to a new episode of our unboxing series. Today I want to introduce you to another interesting device - the Meta 1. It is an augmented reality headset bringing interactive 3D holograms to your real world. The Meta Developer Kit consists of glasses with two prisms which use a kind of Pepper's ghost effect to create an augmented reality view right in front of your sight. It can...
Read more...
Top