Category: Software

Performance 0

Using Command Query Responsibility Segregation to speed up data-driven web applications

Typical web applications spend most of their time reading data from a data storage (i.e. a database) which is then processed and converted to HTML for the desired frontend visualization. Furthermore, when relying on programming languages such as PHP that are essentially based on the “shared nothing principle” the performance...

Magento Logo 0

Magento Newsletter Unsubscribe Form

One of the most missed functions in Magento 1 is a newsletter unsubscribe form. Although, by default you can generate newsletter unsubscribe links to be used for instance in newsletters sent out to subscribers there’s no nice out-of-the-box way to integrate a newsletter unsubscribe form in Magento 1. Which is...

Magento Logo 1

Delete orders in Magento

When developing and testing your Magento store you will potentially create a lot of test orders. In addition, when creating/testing extensions you might need to reset order-related entries, e.g. when experiencing SQL integrity constraint violations such as SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‘0’ for key ‘PRIMARY’, query was: INSERT INTO...

jQuery Logo 0

jQuery Lights out Plugin

In current times, saving energy in all its variants is becoming more and more important each day. When it comes to websites one simple way to save energy is to dim the display when idle. Both Interact has released a simple yet versatile cross-browser jQuery lights out plugin. In order...

Magento Logo 4

Mass import products to Magento multi-store setup

So, you are about to import a large amount of products into Magento. Well, there are a couple of different approaches available. First, you could use the ancient Data Flow import based on specific profiles. Then, you could use the improved Data Import version, which still is (very) resource consuming....

Wordpress Logo 0

WordPress Rating-Widget shows blank reporting graph when using SSL

By default, the free version of the WordPress Rating-Widget does not officially “support” SSL/https setups. In reality, there are no problems using it on SSL setups except when it comes to the reporting graph which is loaded via a http connection set in the configuration, thus causing CORS to kick...

Magento Logo 0

Automatically clean product texts in Magento

So someone copied text from a PDF document and pasted it into the Magento product description (or short description) text field. Unfortunately, the copied text included non-printable control characters in the Unicode range from \x00—\x1F and \x80-\x9f (e.g. DEL, NUL, VT, etc.) thus breaking other extensions from functioning properly, or...

PHP Logo 1

Overloading constructors and functions in PHP

Since I was recently asked whether it’s possible to overload constructors in PHP, or functions in general, here is the quick answer: No, not in the common sense of “overloading”, i.e. creating multiple versions of the same function name with different implementations and arguments. Thus, the following is not possible...

Magento Logo 0

Managing Magento Invoice and Billing Ids

In case you need to change the invoice and billing IDs in Magento only a few things need to be done. First, make sure you understand the logic how these IDs are assembled so you don’t mess with existing numbers 😉 Magento Invoice and Billing ID Schema Have a look...

Magento Logo 12

Automatically copy images from parent configurable product to variants in Magento

By default Magento does not copy images from parent configurable products to their child variants, i.e. associated products. So you need to manually set images for child products once they are associated with the parent configurable product, which can be rather time consuming and (let’s face it) annoying if you...

Wordpress Logo 0

Switching WordPress to https only

As you might have seen I’ve switched this site to https only. The steps involved in switching WordPress to https only are pretty simple. Set Site URL First, make sure to set the proper https site URLs. You find these options under Settings » General: Redirect non-https traffic Second, make...

Magento Logo 0

Magento M2E Pro Newsletter Subscription Extension released

Note: The terms and conditions for using this extension are currently being reviewed to further conform to eBay’s terms and conditions. Thus, this extension is temporarily disabled on Magento Connect until the approval process is completed. Both Interact today released the M2E Pro Newsletter Subscription extension. This extension takes care...

TYPO3 Logo 1

Configure robots.txt for Realurl in TYPO3

In order to configure robots.txt for the Realurl extension in TYPO3 you need to set two things: Add filename for page type 201 in realurl_config.php Add some TypoScript to process robots generation Add filename for page type in realurl_config.php Add TypoScript to process robots.txt generation Be sure to flush the...

TYPO3 Logo 1

Generate hreflang alternate tags in TYPO3

Here is a quick TypoScript snippet that generates hreflang alternate tags in TYPO3. Take note of the following parameters: special.value: set IDs of languages available, e.g. 0 stdWrap.cObject.value: specify the locale corresponding to special.value, e.g. de-AT stdWrap.typolink.additionalParams: specify the special.value values for each locale set TypoScript code to generate hreflang...

OpenVPN Logo 0

Setting up OpenVPN on Tomato firmware for WRT54GL and configure for Tunnelblick client

Setting up OpenVPN on a Tomato based router (e.g. WRT54GL) is actually pretty easy once you know the steps involved in generating the required server and client certificates. First, let’s download easy-rsa from Github, which makes the process of generating the required artefacts a lot easier and start with the...