OXID eShop version 4.6.0

General hints for this package

  1. According to a poll in the forums (was announced on other channels as well), the Facebook feature “LiveStream” was removed. Please note: The update patch doesn’t remove this widget automatically but if you are fancy, you might get rid of the code by yourself:
    • disable admin -> Master Settings -> Core Settings -> Settings -> Facebook -> Live Stream
    • see the template changes diff and remove/change the affected templates:
      • /out/admin/tpl/shop_config.tpl
      • /out/azure/tpl/page/details/inc/tabs.tpl
      • /out/azure/tpl/widget/facebook/livestream.tpl
      • /out/basic/tpl/inc/facebook/fb_live_stream.tpl
      • /out/basic/tpl/page/details/details.tpl
  2. We had a bug entry about an issue in the newsletter sending functionality: https://bugs.oxid-esales.com/view.php?id=3717.
    Also we realized that we cannot really define if a user’s email is not valid if there was a failure in sending email (the reason for this might have been an incorrect server configuration).
    From now on, if sending a newsletter fails, the customer’s information is not updated automatically (value in DB field ‘oxemailfailed’ will not be set to 1, in table “oxnewssubscribed”). Instead, the email address of this user shall be set to “invalid” manually by checking this option in Admin area.


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


Templates have been changed in this minor release. Please take a look at the diff that you will find in your update package.

Please remember the Template Override System we introduced with version 4.2.0. This system will help you saving a lot of time and work while updating your system.

Fixed Bugs

Of course, all fixed bugs in 4.5.x patches have been implemented into 4.6.0 as well. See the entire list of fixed bugs:

New Features

  1. Downloadable products
  2. Rich Snippets with RDFa and GoodRelations
  3. Product price updates on user defined time
  4. oxCounter implementation – universal counter class, used in order numbering
  5. Added the order state NOT_FINISHED – it is set at the start of order processing and if completed successfully, this state changes to “OK”. Else, it will be left in state NOT_FINISHED.
  6. Extension GUI
  7. Extension metadata
  8. oxBlocks in admin
  9. During the bug fix of https://bugs.oxid-esales.com/view.php?id=2638, we added two additional options: Enter Gift Wrapping Prices as net Price (plus VAT) and Enter Payment Method Charges as net Price (plus VAT). According to these changes, we had to change the option: Product and Gift Wrapping prices entered/displayed in Admin are Net Prices into Product prices entered/displayed in Admin are Net Prices. If the shop owner enabled the option Product and Gift Wrapping prices entered/displayed in Admin are Net Prices, the new option Enter Gift Wrapping Prices as net Price (plus VAT) will be enabled as well.

Important information for developers

  1. The config variables, stored in config.inc.php, now take precedence over the config variables stored in oxconfig table. As a side effect of this functionality, the config.inc.php file has been included twice in oxConfig::init(). You should have that in mind in case you included some additional functionality in config.inc.php for some reason.
  2. Added the possibility to debug smarty template names. Just set $this->iDebug=8 in config.inc.php and the names of the templates will be displayed in the store front.
  3. Added a new adodb mysqli driver. To activate mysqli driver, in file config.inc.php, change dbType to mysqli $this->dbType = ‘mysqli’;. In some cases, pages might load faster with this change.
  4. Added possibility to set different URL transliteration lists separately for the installed languages. From now on, the transliteration list in the admin panel acts as global characters list while a newly introduced parameter $aSeoReplaceChars = array(‘<CHAR>’ => ‘<REPLACEMENT>’); can be set in any language file. This parameter appends and overrides the global transliteration list in admin panel. It is recommended to set this parameter only in the basic language files (e.g. /out/en/lang.php).
  5. Due to performance reasons, in database table oxseo, we changed the fields OXSTDURL and OXSEOURL to varchar(2048). In former patches, we already introduced a small change in oxSeoDecoder::_trimUrl() that prepares newly created URLs for this kind of optimization. According to our statistical measures collected from partners and according to general standards and recommendations, SEO URLs are not any longer bound to 2048 characters. Instead, you now can always adjust the maximum length of the URL by setting up the config parameter value iMaxSeoUrlLength and changing the field type length for your needs.
  6. Changed custom template location. In all themes you will find a new folder named /custom/, where all custom templates should be placed, that are requested via URL, passing template name in “tpl” or “infotpl” parameter. This modification influences alist, tpl, details and info views. Thus, all custom templates should be moved / copied manually on upgrade.
  7. After fixing bug #3757, VAT will be always calculated for delivery costs, payment costs and wrapping. In this version options blCalcVATForPayCharge, blCalcVATForDelivery and blCalcVatForWrapping are marked as deprecated. These options have been replaced by blShowVATForPayCharge, blShowVATForDelivery and blShowVatForWrapping.
  8. Due to PHP bugs #47753, #39351 and possibly others we can’t run PHP UNIT tests and guarantee product quality on PHP versions lower then 5.2.10. So from OXID 4.6 on, we changed the minimum system requirements. The minimum required PHP version now is 5.2.0. On PHP versions lower then 5.2.10 you will get a warning. The recommended minimum PHP version is 5.2.17.