geschrieben von Kevin Schroeder
am 10. August 2017 - 14:02
With the holiday season coming upon us more quickly than we would like (unless you’re a kid, and many of us are) preparing your site for the holiday season is a required activity. However, there is not a lot of information out there on how to load test your Magento installation well. With that inContinue Reading "Load Testing for Magento"
geschrieben von Steven Records
am 2. August 2017 - 20:13

How to Increase Organic Traffic with Keyword Research

You know what happens when you don’t do keyword research and optimize your pages for search engines?


geschrieben von
am 26. Juli 2017 - 18:43

One thing I breezed by in my recent Modifying a jQuery Widget in Magento 2 article was the whole returns two widgets RequireJS module thing. We mentioned that modules like the mage/menu module will do this.

//File: vendor/magento/magento2-base/lib/web/mage/menu.js define([ "jquery", "matchMedia", "jquery/ui", "jquery/", "mage/translate" ], function ($, mediaCheck) { 'use strict'; $.widget(/*...*/); $.widget(/*...*/); return { menu: $, navigation: $.mage.navigation }; });

However, we never got into what it means for a RequireJS modules to return two widgets. We learned if a RequireJS module returns a single jQuery widget,

$.widget('pulsestorm.someWidget', /*...*/); return $.pulsestorm.someWidget;

and if that RequireJS module is invoked via a data-mage-init…

geschrieben von
am 25. Juli 2017 - 1:37
This entry is part 6 of 6 in the series Magento 2: Advanced Javascript. Earlier posts include Magento 2: Javascript Init Scripts, KnockoutJS Primer for Magento Developers, Magento 2: KnockoutJS Integration, The Curious Case of Magento 2 Mixins, and Knockout Observables for Javascript Programmers. This is the most recent post in the series. Like its brethren plugin and module, the word widget has the unfortunate distinction of being a popular way to describe a bunch of computer code without a corresponding strict definition of what a widget is. Magento 2 continues this tradition and adds their typical distinct spin. Like […]
geschrieben von
am 17. Juli 2017 - 22:46
Re: A Declarative Approach for Database Schema Upgrades:

It sounds like Magento’s planning a pretty radical overhaul of how it handles schema and data upgrades between versions. The looks to be a fiat from on high (vs. the community driven approach they’ve been using for bug fixes). If you’re making schema/data changes that aren’t in Magento’s core or Marketplace code bases, you’ll want to pay attention to this – your deck chairs may need shifting about.

geschrieben von
am 17. Juli 2017 - 22:39
Menu Editor to Replace Category Based Menus in Magento 2.:

Feels like I can recommend checking out stuff from SnowdogApps, sight unseen.

geschrieben von
am 11. Juli 2017 - 0:11
Create a PHPUnit Dashboard With New Relic:

Not strictly Magento related, but if you’re using New Relic it looks like they can automatically detect test runs and give you useful metrics about your tests. Neat!

geschrieben von
am 10. Juli 2017 - 22:16
This entry is part 12 of 12 in the series Modern PHP. Earlier posts include Bypassing a Slow Composer Repository, Slow Composer Followup, Getting Started with PHP Composer and Magento, PHP: The Right Way; A Review, PSR and Code Style Guidelines, Sellvana: Developer's Alpha Review, PHP Primer: Type Hints, PHP Primer: Namespaces, PHP Primer: Interfaces, Design Patterns, PHP, and Magento, and PHP-FPM and File Permissions. This is the most recent post in the series. In the past — three? four? let’s call it n — years, there’s been a lot written about PHP’s renaissance. The PSR standard(s), Composer’s day job […]
geschrieben von
am 6. Juli 2017 - 2:40
First, let’s state the problem we’re going to examine In a secure unix enviornment, the web server’s user unix account and the unix user account created for command line access (for deploying code and running command line tasks) should (for security reasons) be different. This, in turn, means PHP code that runs in one context (web) will creates files or directories that may not be readable or writable in other directories This is a persistent problem for web developers of all stripes, but PHP developers feel it harder than most. Because of PHP’s success, there’s a massive enviornment of inexpensive […]
geschrieben von PAJ
am 3. Juli 2017 - 15:04

With CE 1.9 Magento introduced the SASS stylesheet language to aid frontend development. With Magento 2.x for reasons best known to the developers they switched from SASS to LESS. At the end of the day both LESS and SASS are compiled into good old CSS but if your stylesheet language of preference is SASS or you are new to Magento and are looking for a good starting block to build a new theme from then it is well worth taking a look at SnowDogApps theme blank sass project.

The Less to Sass Community Project is officially supported by Magento and Theme Blank SASS is the result of this project – a (production ready) Magento 2 blank theme converted to SASS.


geschrieben von Jayme Courtney
am 27. Juni 2017 - 18:36

[mk_page_section bg_image=”” attachment=”fixed” bg_position=”center center” bg_repeat=”no-repeat” bg_stretch=”true” enable_3d=”true” gr_end=”#1e73be” sidebar=”sidebar-1″][vc_column][vc_single_image image=”1287″ img_size=”500 × 250″ alignment=”center”][/vc_column][/mk_page_section][mk_page_section gr_end=”#1e73be” padding_top=”55″ padding_bottom=”0″ sidebar=”sidebar-1″][vc_column width=”1/2″ css=”.vc_custom_1440002803493{padding-bottom: 20px !important;}”][vc_single_image image=”1297″ img_size=”full” alignment=”center”][/vc_column][vc_column width=”1/2″][mk_fancy_title tag_name=”h4″ color=”#52d3db” margin_bottom=”4″…

geschrieben von PAJ
am 26. Juni 2017 - 15:31

Installing Magento 2 in a development environment can be time consuming. This is my Magento 2 development deployment for Docker which can be used to quickly create a new Magento 2 CE environment, or switch between persistent development environment volumes.

Features Requirements
  • Host server with min 2GB RAM
  • Docker Engine
  • Docker Compose 3.1
Base Images / Source
geschrieben von
am 22. Juni 2017 - 4:00
This entry is part 1 of 1 in the series Laravel Spark. This is the first post in the series. As Pulse Storm (the small boutique software consultancy I started and continue to operate) takes a half step back from ecommerce and shifts back into software systems consulting, I’ve found myself doing a lot of initial application prototyping/MVPs for both established businesses as well as less-technical entrepreneurs with a need for software. Laravel remains the best tool I’ve used for this sort of work. Most recently, I’ve been working on a project that started in Laravel Spark. Laravel Spark is […]
geschrieben von Fabian Schmengler
am 21. Juni 2017 - 23:02

Magento architect Anton Kril asked about opinions on XML based tests:

#magento twitter, what are your thoughts about writing tests in XML?

— Anton Kril (@AntonKril) 20. Juni 2017

My answer does not fit into a Tweet, so here’s a short blog post.

My first thought was “please no, there’s enough XML already”. But the explanation made me think.

Magento covers a scenario with test. Extension that modifies that scenario, also modifies its test with XML that is merged to original test

— Anton Kril (@AntonKril) 20. Juni 2017

Currently the core test suite does not have much value in custom projects, because the site specific settings, themes and modules…

geschrieben von
am 20. Juni 2017 - 18:41

A simple mailtrap extension for Magento 2. Mailtrap is a service that lets you point your development instances at an SMTP server that accepts mail, but doesn’t deliver it. Instead mailtrap collects all the mail in a single INBOX. If you’ve ever accidentally emailed an entire customer list with a subject line like

Subject: Testing, hope this s——t works.

you’ll instantly see the value.

The Magento extension is also a simple example of how to hook into the Magento\Framework\Mail\Transport class with a custom preference and change the behavior of the email system.

geschrieben von PAJ
am 20. Juni 2017 - 18:30

As I started building Docker service container images for Magento 2 CE development I got interested in the concept of dynamic service load balancing on a single host. Having already created a dynamic load balancer using NGINX I wanted to do the same for Magento 2 using Varnish.

My Magento 2 service container images include REDIS services for the Magento session and system cache and a Varnish service for the full page cache. Varnish is an HTTP accelerator designed for content-heavy dynamic web sites and is the recommended full page cache system for Magento 2.

Magento 2 Docker Network

Varnish is configured via the Varnish Configuration Language (VCL) config file. By configuring…

geschrieben von
am 13. Juni 2017 - 20:18
This entry is part 7 of 7 in the series Pestle. Earlier posts include Pestle 1.1.1 Released, Pestle 1.1.2 Released, Magento 2 Setup Migration Scripts, Pestle 1.2.1 Released, Sending Text Messages with PHP, pestle, and Nexmo, and Pestle 1.3 and AbstractModel UI Generation. This is the most recent post in the series. We interrupt this Modern Javascript series to let you know there’s a new release (v1.4.1) of pestle available. Pestle is both a simple PHP command line framework for sharing functions, as well as the world’s preeminent collection of Magento 2 code generation routines. It’s an integral part of […]
geschrieben von PAJ
am 13. Juni 2017 - 17:39

Whilst building containers for Magento 2 I came across the docker compose scale command which allows you to easily duplicate and scale containers running a service in Docker.

For example if I have a web application service called php-apache

docker-compose scale php-apache=10

Will start another 9 containers running the php-apache service giving me 10 containers running the same php-apache web application service.

Of course if you want to have real resilience and load sharing Docker swarm is the solution so the question is, are there any benefits from scaling a service in mulitple containers on a single host?

Well, yes, because you can still load balance the traffic to your application and achieve a basic level of container resilience.

Scaled services will only work for applications that use private…

geschrieben von Christian Münch
am 9. Juni 2017 - 17:09

Hi everyone,

after our last release before Magento Imagine 2017 we are back again with a new release for you guys.
The new release contains one new command and some ports of n98-magerun1 features to existing n98-magerun2 commands.
Also we fixed some bugs related to the DB logic or improved the developer console.

New Command index:trigger:recreate

The new command is handy to recreate triggers on the fly. If you are not familiar with the new index logic: If you change the index mode of an indexer in Magento 2 the system will create DB triggers on the fly.
If one of the “mview.xml” files is changed the triggers should be regenerated. Why do we need this command? With this command you can force to regenerate the triggers during develpment. It is not needed to wait for a cronjob which triggers the regeneration. Also there are some…

geschrieben von Sergei Prakapovich
am 6. Juni 2017 - 19:24

A typical online store cannot manage properly without search engine optimization. On-page optimization should never be neglected in favor of affiliate links and citations (off-page optimization). The biggest advantage of on-page optimization is that it is something you can fully control and manage.

Magento 1.X is not as perfect as it could be regarding SEO. Many pitfalls weren’t taken into consideration at all. The users needed something more professional, stable, and flexible. That’s how Magento 2 appeared. The second version of Magento drastically differs from the first one. The developers have taken into account previous…