OXID eShop version 4.8.0 (CE + PE) & 5.1.0 (EE)

General hints for this package

Support for PHP 5.2 will be dropped

With OXID eShop version 4.8/5.1 we’ll drop the support for PHP 5.2. In general that means that OXID eShop Professional and Enterprise edition will be delivered encrypted for use with PHP 5.3 and PHP 5.4. Please read what that entails, what to do from your side, and why this change has been made in the blog post PHP 5.2 Will not be Supported from OXID eShop Versions 4.8 and 5.1 on

Enclosed Modules

The OXID eFire extension “PayPal” is already enclosed in the standard delivery of this OXID eShop version as well as the mobile theme plus the theme switcher. If you want to use these extensions, simply activate them in the admin panel -> extensions -> modules. If you don’t want to use them it is save to remove the folders /modules/oe/oepaypal, /modules/oe/oethemeswitcher and/or /modules/oe/mobile.

For more details about these extensions please see
http://www.oxid-esales.com/en/products/facts/oxid-eshop-mobile-theme/product-information.html and

Streamlined Module: Invoice PDF

The well-known module Invoice PDF was updated for use with OXID eShop version >= 4.7/5.0. Also, the language keys used in this module have been extracted from the shop language files and put into the correct language files for this module.


See http://www.oxid-esales.com/en/support-services/documentation-and-help/oxid-eshop/installation/oxid-eshop-update-installation.html


Template changes have been done in this minor update. Please find detailed information about template changes in “templ_docu_admin/index.html” and “templ_docu_azure/index.html” of the package and a tutorial about the template hierarchy and the override system here:

Fixed Bugs

Please find a list of fixed bugs for this and all intermediate releases (beta, RC, RC2) here in changelog:


In particular:

bugtrack changelog for RC2

bugtrack changelog for RC

bugtrack changelog for beta

New Features

SEPA (Single Euro Payments Area) Integration

The example direct debit payment implementation included in the shop is now compliant with SEPA. Please read more about it at

In addition to the existing direct debit example solution of the shop:

  • the account number field can be filled with valid IBAN code.
  • the bank code field can be filled with valid BIC code.

Please note that, as no payment provider is linked to the direct debit example implementation in the basic shop, payment modules included in a live shop must implement the SEPA functionality themselves. However, they might reuse the functionality implemented in the example solution.

Built-in Diagnostics tool

With Diagnostics Tool it is possible to collect and review technical information about your shop and server. This information might be useful before updating, installing modules or on diagnostics. Diagnostics Tool allows collecting Basic shop information, Module information, System Health Status, System Information, PHP Configuration and checking the consistency of your OXID eShop files. Version and consistency checker collects names of php files and templates, detects their MD5 checksum, connects for each file to an OXID oxchkversion webservice and determines if it fits this shop version. It doesn’t collect nor transmit any license or personal information. This feature is located at the the admin panel -> ‘Service‘ -> ‘Version Checker‘.


We enhanced the number of widgets introduced in OXID eShop version 4.7/5.0 by inserting oxwarticlebox, oxwarticledetails, oxwrating, oxwreview. Please find more information about it in this tutorial:

Language changes

Reducing the language files

Language files got cleaned up. Duplicates were removed where possible, some translations were changed, and keys got some of their spelling fixed. After these changes, all template related keys from Azure were moved to /application/translations/{locale}/lang.php. The template related file can still be found in /application/views/azure/{locale}/lang.php and can be used. Overall, the amount of language constants could be reduced by approx. 20%.

Streamlined language mapping

For OXID eShop version 5.1, the map usages were removed from all templates to avoid confusion. The heavy usage of maps cluttered the system and it became hard to track all the changes and translation usages. The functionality is still there and can be used if you feel fancy; you’ll find more information here: https://oxidforge.org/en/language-handling.html

Solution for punctuation such as colons

Sometimes there‘s a need to have a punctuation mark at the end of a language key translation (e.g. „:“, „…“, „.“ and others). Previously such occurencies had their own translations, for example “more” and “more…” with different language keys. From OXID eShop version 5.1 on, the suffix functionality was added. It allows the user to add any punctuation mark to his translation, and so to use it multilingual.

Example usage:

[{ oxmultilang ident="EMAIL" suffix="COLON"}]

Another way to add colon is via the Smarty modifier „colon“. Example usage:


Using arguments in translations

There is a possibility to use variables with arguments in translations. To use them, you need to know how sprintf or vsprintf methods work and pass the parameters accordingly. Example usage:

[{ oxmultilang ident="VAT_PLUS_PERCENT_AMOUNT" suffix="COLON" args=$key }], 


'VAT_PLUS_PERCENT_AMOUNT' => "plus VAT %s%% Amount", 

%s is replaced with $key value. To use translations with multiple arguments, you have to pass an array as „args“ parameter. Example:

[{assign_adv var="invite_array" value="array ( 
'0' => '$sender_name',
'1' => '$shop_name'

[{ oxmultilang ident="INVITE_TO_SHOP" args=$invite_array }]


'INVITE_TO_SHOP' => "An invitation from %s to visit %s", 

The array here is formed in smarty, but it is possible to form the array in the controller, and pass it to the template. When using „oxmultilangassign“, you can use translations with arguments too. Example usage:

[{assign var="_statusMessage" value="THANK_YOU_MESSAGE"|oxmultilangassign:$oxcmp_shop->oxshops__oxname->value}]

Helper script to fix language changes

We prepared a script that might be helpful for you to update your templates by the language changes. Please carefully read the README file. You will find this script here:

Also this script is included in eShop update script.

Fix legal issues (As advised by Trusted Shops)

A new message shall appear for the payment method “Cash On Delivery”

It is possible to display a message in the fourth checkout step if the payment method “Cash On Delivery” was selected. This message will inform purchasers that there might be an additional fee for this payment method. This message can be disabled at the admin panel -> ‘Master Settings’ -> ‘Core Settings’ -> ‘Settings’ -> ‘Order, and can be edited via Customer Info’ -> ‘CMS Pages (edit the CMS page with the ID ‘oxtscodmessage’).
By default, this feature is enabled in OXID eShop.

New message for international delivery

It is possible to display a message in the fourth checkout step. This message will inform the purchaser that there might be additional fees if the goods will be shipped abroad. This message can be disabled in the admin panel -> ‘Master Settings’ -> ‘Core Settings’ -> ‘Settings’ -> ‘Order’. The text of this message can be edited via Customer Info’ -> ‘CMS Pages (edit the CMS page with the ID ‘oxtsinternationalfees’). By default this feature is enabled in OXID eShop.

Simply switch the position of the currency sign

The new feature “Price formater” announced in OXID eShop version 4.7.8/5.0.8 is now ready to use as the template changes were made in this major release.

Price formater is a smarty plugin capable easily switch the display of the currency sign to front of the value without the need to change all affected templates. Example: “$17.00” instead of “17.00 $”.
Usage in template:

[{oxprice price=$oArticle->getPrice() currency=$currency}]

Also to price parameter can be passed simple float variable, instead of oxPrice object.

[{oxprice price="7.17" currency=$currency}]

To Currency parameter should be passed hole currency object.
Price setup define in admin: Master settings->Core settings->settings->Other settings->Add remove currencies.

Format examples:

[email protected]@,@[email protected] €@2// usual
[email protected]@[email protected]@ [email protected]@Front // display currency in front

Implemented Trustbadge

If your shop is certified by Trusted Shops, you most likely want to show as much as possible information about it at a dedicated place. Trusted Shops offers a good solution for that: the Trustbadge that opens at mouse over on the Trusted Shops seal in the bottom right corner.

Define your own logo in config.inc.php

During the bug fix #5402, the new config option sShopLogo was introduced for defining a custom logo image file. Usage: add the following code to config.inc.php and upload your_own_image.jpg to /out/azure/img/:


Important information for developers

  • thankyou::showFinalStep is deprecated
  • oxarticle has got “iStockStatusOnLoad”, oxarticle::updateSoldAmount has been adapted
  • oxbasket: formatted price methods are deprecated. New methods:
    • oxbasket::getPaymentCost, oxbasket::getWrappingCost, oxbasket::getGiftCardCost,
    • oxbasket::getDeliveryCost, oxbasket::getTrustedShopProtectionCost, oxbasket::getMinOrderPrice
    • oxbasket::getMinOrderPrice
  • oxcontent has got get+set methods for the category
  • email/html/sendenow.tpl -> email/html/ordershipped.tpl
  • new method: oxmodulelist::getModules displays the aModules array from oxconfig
  • new method: oxSession::isActualSidInCookie checks if a cookie with a sessionID is existing
  • oxUtils::toFileCache has got a new parameter TTL (time to live)
  • new method: uxUtilsUrl::stringToParamsArray “&” and “&” can be used as delimiters
  • new methods: oxView::isBetaVersion, oxView::isRCVersion, oxView::showBetaNote, oxView::getSidForWidget
  • new methods: oxViewConfig::getTsRatings, oxViewConfig::getShopLogo, oxViewConfig::setShopLogo
  • jQuery was updated to version 1.8.2
  • jQuery UI was updated to version 1.9.1
  • new models: oxcurl, oxdiagnostics, oxdiagnosticsoutput, oxfilechecker, oxfilecheckerresult, oxfilecollector, oxsmartyrenderer, oxtsratings
  • new core classes: oxonlinemoduleversionnotifier, oxsepavalidator, oxsimplexml, oxsystemeventhandler, oxutilsxml

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published.