It's time for another Magento extension round-up, reviewing some free extensions that were released in the last two months. This month we are reviewing a newsletter coupon extension and shipping insurance module for Magento 1, as well as Magento 2 extensions for integrating Bootstrap, menu customisation, and viewing template block hints.

Magento 1 Extensions

Magento Newsletter Coupon by StuntCoders

The Magento Newsletter Coupon extension allows auto-generated coupon codes to be sent to new newsletter subscribers based on a particular shopping cart price rule. Shopping cart price rules are created and configured the standard way in the admin panel under Promotions → Shopping Cart Price Rules. A shopping cart price rule can then be chosen from a list of all rules to be used for newsletter coupons. The coupon codes generated will have the same conditions, usage limit, usage per customer, and expiration date as the chosen shopping cart price rule.

This extension does not require any rewrites, and simply adds an observer to the newsletter_subscribe_save_before and newsletter_subscriber_save_afterevents to generate and send coupon codes. It does however require a code snippet to be added to the newsletter email template to display the generated coupon code.

View on GitHub

Shipping Insurance Module by Aleksandr Ilyin

This extension by Aleksander Ilyin allows a fixed shipping insurance amount to be configured per shipping method via the admin panel, which is added as an additional row in the order totals. The shipping insurance can also be enabled/disabled for each individual shipping method.

On the downside, the shipping insurance label that displays beside the insurance amount in the order totals is hardcoded to 'Shipping Insurance label' and not configurable via the admin panel. This will need to be modified directly in the helper class Itransition_ShippingInsurance_Helper_Data.

There are rewrites on the order totals, invoice totals, and credit memo totals classes, and changes may be required to modify the shipping method and shipping insurance presentation in the shipping/checkout templates.

View on GitHub

Magento 2 Extensions

Magento 2 Twitter Bootstrap Integration by MageCheck

Bootstrap is a popular mobile-first responsive frontend framework. Magento 2 Twitter Bootstrap Integration is a drop-in extension that installs the Bootstrap 3.3.7 library for Magento 2. It allows the Bootstrap library and library theme to be enabled/disabled in the admin panel and is configurable on a store view basis.

If you'd prefer to use Bootstrap as a standardised CSS framework for your Magento project, then this extension may be an easy way to get something up and running.

View on GitHub

Magento 2 Menu by SnowdogApps

Magento 2 Menu by SnowdogApps is a flexible customisable alternative to the standard Magento 2 category-based menu. This includes a number of useful features, such as support for CMS pages and blocks, support for custom URLs, and the ability to set custom CSS classes on each menu node. It also provides functionality to manage multiple menu for different store views.

New types of menu nodes can be defined through XML configuration and just need to implement a new PHP interface. Instructions for doing this can be found on the GitHub page.

View on GitHub

BetterBlockHints by Ryan M. Poe

The BetterBlockHints extension is an alternative to the default Magento template block hints. Rather than always displaying the template hints when they have been enabled in the developer settings, this extension allows template hints to only be displayed when holding down the alt, shift, cmd or ctrl keys. The block details such as name, template and class can then be viewed by clicking on the block.

This can be useful for switching between the actual presentation and viewing the block information quickly as needed. During our testing we found the behaviour could be unpredictable; the block details could be triggered by clicks even when not holding down any of these keys, and sometimes would not show up when holding down the keys.

View on GitHub