Category: Software

Setting actual sender for e-mails in shared Sent Items folder in Roundcube Webmail

Recently, I came across the requirement to set up shared IMAP folders in Roundcube Webmail for a Dovecot IMAP server setting. Everything went smoothly using the respective Dovecot setup in conjunction with the Roundcube ACL plugin for IMAP Folders Access Control Lists Management (RFC4314, RFC2086). Everything? Well not quite everything. The problem was that for […]

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 overhead for consecutive processing of […]

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 why there already exist some extensions […]

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 `sales_order_tax` (`order_id`, `code`, `title`, `percent`, […]

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. Lastly, there is magmi – […]

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 and prohibit non-safe external requests: […]

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 prohibiting your data export to […]

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 by default in PHP: Pattern-based […]

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 deal with a broader range […]

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 sure to redirect all non-https […]

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 of automatically subscribing your eBay […]

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 cache and you are all […]

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 alternate tags Here’s the snippet […]