From OXIDwiki

Jump to: navigation, search

Find below a list of tutorials written in English on all things OXID eShop.

Feel free to write your own tutorial and please list it here when done. Of course, you can write your tutorial in this Wiki.

You are invited to add ideas for tutorials to the list of OXID eShop tutorial ideas.


Getting Started

OXID models: Getting, updating and storing database data

Learn basic information about the OXID framework. Fetching and storing data from and to the database is represented in the OXID models. Learn how to use it in your daily job when writing extensions, changing functionality etc:

Introduction into the main principles of OXID eShop

Matthew Setter is writing for PHP Master and introduces to OXID eShop in a 3-part-series workshop style tutorial there.


Six Easy Steps to Start Selling Online with OXID eShop

If you’re one of these merchants—an individual, a small business, or even a large one—and you’ve been toying with the idea of taking your products to new customers and markets via the Internet, then this article is for you. In it, I’ll be discussing how to quickly and easily build your online shop using one of the new breed of ecommerce solutions: an open-source, community-driven shopping cart system called the OXID eShop. Come on in, and let’s make a start!


Supercharge Your OXID Development Environment

Are you always on the lookout for tools and techniques that will help you get the most out of your OXID development environment? Here are some tips that you can use to make your OXID development environment faster, smarter and more fun.


Create an OXID eShop Server in Amazon's Cloud

Are you looking for a quick way to set up an OXID eShop server, maybe for research or testing purposes? With Amazon's cloud services, this is a snap to set up and use. The following instructions guide you through the process.


Database Structure *Under Construction*

Are you looking for a documentation, with short explanations for all database fields? Here you will find your answer.


Configure the Language Sites of your OXID eShop Installation

Daily, there are more and more new online stores using OXID eShop. Some of these shops are supposed to be available in just one language (e.g. German), nevertheless they tend to forget to disable English, which is enabled as an additional language in OXID eShop by default.


Adding new unit types

Since version 4.6 multilanguage product unit types will be supported. Please review following link to familiarize with this new feature and get instructions on how to add new unit types for your shop. 


How to move OXID eShop from one server to another

Sometimes it is necessary to move a complete Oxid-Shop, either from testings/building to liveserver, or because of changing the hoster.


How to set up a LAMP Server and OXID eShop on CentOS

With this tutorial bin63 provides a step-by-step instructions for installing a full-featured LAMP stack and OXID eShop on a CentOS system. In the following you will be instructed on setting up Apache, MySQL, PHP and OXID eShop.


Interface Customization

Template Documentation on the Basis of YAML

Tobi74 provides an OXID eShop demo system on his website on the basis of YAML. With this YAML template in debug mode, it is easily possible to see each slice of the OXID eShop template structure. You can also download this developer template set from his website for free.

Product and Category Sorting for OXID

Another blog post by Ashant where he describes how to set up sorting for products and categories.


Hiding Page Elements for Unregistered Users

HowTo implement element hiding for non registered users with custom smarty block plugin.


Connect your site to Facebook

To use Facebook features (e.g. like, share button) in your eShop website you must connect your site to Facebook.


Adding Facebook Share and Like buttons to OXID eShop

Social networking is all the rage these days. And if you'd like to link your OXID shop up to the largest social network on the Web, it's quite easy! This article shows you how to easily add Facebook "Share" and "Like" buttons to your product pages, both with and without XFBML.


Creating new help page from OXID eShop 4.4.0 on

Help pages where moved from template system to CMS pages from OXID eShop version 4.4.0. Learn how to implement them for different views: http://wiki.oxidforge.org/Tutorials/Creating_new_help_page

Add a field to register.tpl


[4.5] Nivo-Slider instead of Default-Slider for Promotions / Banners

a step-by-step howto


[4.5] Understanding theme management in OXID eShop from 4.5.0

From OXID eShop 4.5.0 theme handling will be moved from config.inc.php to back-end (Master Settings -> Themes) showing list of all available templates, their descriptions, thumbnails and theme specific settings and also theme switching in back-end. Theme meta data file and thumbnail image laying in theme folder enables template appearance in list. To enable selected theme just click activate button.

[4.5] Customizing Your Online Storefront with OXID eShop 4.5.0 Themes

In August 2011, Vikram wrote an Article for the php|architect magazine. php|architect now was so friendly to allow us to use this article for our tutorials. In this article, Vikram describes how to adapt the azure theme for ones own needs using the theme override functionality.

[4.5] Use a teaser to hide long descriptions

A small but fancy snippet to show / hide long descriptions on click. Only the first few lines are shown by default.


Adding Text to OXID eShop Banner

On most OXID-Shops that use promotional banners, also sometimes called sliders on the start-page, it is often advantageous to offer some textual headings on the banner-images. This mini-howto will help you equip your start-page banners with textual overlays.


Modules and Extensions

Informations on how to create Modules / Extensions by yourself

Extension metadata file

Support for an extension metadata file was added. This file contains information about the extension name, description, eshop classes that are extended and other information. This file is a plain PHP file. Metadata file must be placed into the root extensions directory and named "metadata.php".

Extension GUI

This feature was born as pet project in our development team. The goal was to beautify current extension management process, by adding separate admin page, instead of single text-area input describing class extend information.

[4.7/5.0] How to Write a Module for OXID eShop: Display “You will save x %” on the Product Details Page

Learn step-by-step how to easily generate a module for displaying content saving on the product detail page of your OXID eShop installation, if you entered a recommended retail price as well as your price. You will also learn how to embed your own CSS and how to make your module multilingual.

[4.7/5.0] How to Write a Module for OXID eShop: Round the Price on Product Details Page to a Fivy

Learn how to write a very simple module for OXID eShop: round up the price on the product details page to five cent. Simply copy an existing method and overwrite it with your additions.

How to Extend OXID eShop With Modules (Part 1)

Whenever you want to extend the default functionality of an OXID eShop, you should look for existing modules, this may save you a lot of time. In case no module meets your demands, the fabulous OXID API allows you to code your own module.


How to Extend OXID eShop With Modules (Part 2)

Welcome back to the workshop on modules for OXID eShop. In the last Post (LINK) I showed you how to write your first module and how you we‘ll be able to display new information in your shop. In this part of the workshop I‘ll give you more information about the module system and the view concept.


How to Extend OXID eShop oxReview (a simple Module)

based on a question on the forum the topic became a wiki page concerning extending the Product review by adding an image ref to the review system


PHP Module Programming with OXID eShop CE

In this article on PHPBuilder.com Andreas Ziethen describes the installation, the architecture and how to write a module for OXID eShop using an example.


OXID eShop – enable lazy loading for categories

MaFi writes about lazy loading in OXID eShop in general, gives a specific example and provides a module for activating the lazy loading method.


Create a backend module - 1. Getting started

Modifying the Oxid backend is not an easy task. I will help you get started by copying an already existing module. Taking the systeminfo module for our starting point, we will create a minimal framework for a new module. The systeminfo module is located in the admin section of your site under Service - System Info. The new module will also live in the Service section.


Create a backend module - 2. Survive updates

In the first part of this tutorial, you learned how to start coding a new backend module with a minimum of fuss. In this part you'll learn how to place your files in the Oxid eShop folders so that a system update won't overwrite what you've done.


Create a backend module - 3. Code the module

Having set up the module framework in the first two parts of this tutorial, we will now dive into the actual coding. This part will guide you in the implementation of your module and give some pointers on best practices and pitfalls to avoid. The examples presented here will be quite simple, in keeping with the KISS principle.


Customize OXID eShop with oxBlocks

Find out how to improve reusability and easily customize OXID eShop with the new oxblocks introduced in v4.5.0.


Modules / Extensions / Snippets shared by the community

Disable certain payment-methods for specified articles

based on a question on the forum how to disable payment for the basket containing articles assigned to a hidden category, which maps to disallow Payment [disable_payment]

Maintenance Mode with frontend-access for admin

With this neat module you can access the frontend by simply adding "?user=admin_user_name&pass=admin_password" as URL parameters. This module can as well be used when doing some maintenance in a running system.

[maintenance mode]

Integration of REDAXO CMS into OXID eShop using TOXID

Learn how to integrate contents from your REDAXO CMS installation into OXID eShop using the TOXID interface.

Google Sitemap XML

a simple and easy script to generate a xml-sitemap for google

Show all entries from oxconfig

CLI script to read all entries from oxconfig in clear text

Displaying content of CMS CONTENIDO with OXID2CON

With OXID2CON Portal any content of the Open Source Content Management System CONTENIDO can be displayed in the OXID eShop. Open Tutorial

Make calls to the OXID ERP interface (SOAP)

This tutorial describes, how you you get/set data with the ERP-interface in the shop via a PHP-script or a tool like SoapUI.

Open Tutorial

Validate a form

This tutorial describes, how you you validate your custom forms server-side and user-friendly with JavaScript in the Frontend with OXID internal tools:

Open Tutorial

Using and extending Promotions

OXID's powerful promotions let you build up a private sales shop without much to do yourself. Create promotions about expired, current and upcoming shop events!

Built in standards allows easily to design promotion's look and, if needed, setup it for specific user groups. But there is much more you can achieve with some simple steps. This tutorial explains how to extended standard functionality by creating custom module for the "promotion queue" business case. Tutorial shows how to:

  1. create promotions products administration
  1. setup frontend for promotions queuing
  1. queue logics implementation


Payment Systems

Accepting Credit Card Payments with OXID eShop CE and Authorize.Net

If you're planning to start an online store, it should be pretty clear that accepting electronic payments isn't an option - it's a necessity for you to compete effectively. And that's where this article comes in. In a couple of pages, it'll show you how to begin accepting credit card payments for your products using the open source OXID shopping cart and the Authorize.Net payment gateway...with, of course, a little bit of PHP to make things interesting!


Accepting Credit Card Payments with OXID eShop CE and AlertPay

Following up his last article Accepting Credit Card Payments with OXID eShop CE and Authorize.Net at Zend Developer Zone, Vikram Vaswani explains how to integrate the AlertPay interface into the OXID eShop. In opposit to the former article, where a transaction-oriented API was illustrated, the new article describes the implementation of a payment gateway that requires the shopping cart to transfer control to its own user interface and returns control to the shopping cart once the transaction is complete.



OXID eShop in your language?

If you want to help translating OXID eShop or use the OXID Translation Center maintaining your language, please proceed to this tutorial. It it will tell you everything about translate.oxidforge.org and language packs for OXID eShop

Translating The OXID eShop GUI

OXID eShop comes with a full-featured i18n implementation that is UTF-8 compliant and written in accordance with OOP principles for easy extensibility. This implementation makes it possible for developers to translate application resource strings to different languages, as well as support local conventions for date and time display. This article examines it in detail.


Install Permanent Redirections

A short description how to install generic redirections (html header 301) to product URIs


How to move a database > 2MB

Most hosting provider set the limit to the PHP upload function to 2MB which makes it not easy importing databases > 2MB to your new installation if you use e.g. phpMyAdmin as your database management tool. Read how to get it handled in your terminal.


Currency Settings in OXID e-Shop

Ashant describes the currency settings in the admin panel of OXID eShop in his blog post.


edit / repair / deactivate module entries via frontend

Did a new module entry destroy your backend? Does a misconfiguration of a module prevent you from using the backend?

Just use this script to edit the modules via frontend!


Running OXID eShop Community Edition (Version 4.5.9) On Nginx (LEMP) on Debian Squeeze/Ubuntu 11.10


Calculate VAT in cart and checkout only

You want to display prices without VAT in the catalog part of the shop but the summary calculation has to be including tax? Read this tutorial to achieve this goes with some simple steps:



OXID Cheat Sheet

This OXID Cheat Sheet is brought to you by D³ Data Development. It's a compendium of the most important commands, parameters etc. you will need in your everyday work with OXID eShop. Thomas told me that they printed it out in their office and have a laminated copy on each desk. Feel free to use it a similar way if you want :-)
File:OXID cheat sheet.odt

Understanding OXID's SEO Implementation

OXID eShop comes with a full-featured SEO implementation that automatically takes care of generating descriptive URLs for products and categories, and optimizing these URLs for maximum search engine "stickiness". This SEO implementation is extremely sophisticated - it supports URLs in multiple languages, handles reserved words and special characters, and allows a high degree of user customization. This article examines it in detail.

Filesystem Permissions

The OXID eShop script tries, during the installation process and during some certain processes running the shop system, to chmod some directories to writable which fails on some (restrictive) operating systems like Debian or FreeBSD. Read how to resolve this behavior.


How template hierarchy and override system work

Find out how the template hierarchy and the template override system of OXID eShop work: http://wiki.oxidforge.org/Tutorials/How_template_hierarchy_and_override_system_works

Understand base picture implementation from version 4.3.0 on

Many people ask "How does it work" and "How can i use or kid it" here is a short tutorial with some hints and tips: http://wiki.oxidforge.org/Tutorials/understand_newbasepicture_implementation

Image handling changes since version 4.5.1

4.5.1 shop version comes with improved image handling. Since now images are not generated by image URL getters, but on demand by separate PHP process. Read more about it in this tutorial:

Best Practice Security Precaution

Coding OXID eShop, we take care about the security of the application itself, pass security audits by 3rd party specialists and work with security bulletins. Nonetheless, there is a number of points you are responsible for. Find out in this tutorial what to take into account configuring your server, OXID eShop and 3rd party software:

Check before going live

jkrug started an interesting list of checks that you shall do before you go live with your new online store:
Tutorials/Check before going live.

Where does the php.ini for the Zend Optimizer go if you host at 1&1 or Strato

If you use OXID eShop Professional Edition or Enterprise Edition, Zend Optimizer is still mandatory for your installation. Learn how to install it if you use 1&1 or Strato as your hosting provider:

Language handling from eShop v4.5.0

MySQL table row size limitations reduced number of possible languages in OXID eShop. The number of supported languages decreased even more if UTF8 encoding is used, since the row size increases. This tutorial shows how you can access and control new language handling.

Database Structure

database documentation

List of Config Options


List of Not Overwritable Classes


List of Deprecated and Removed Code


List of Cookies used


[4.7./5.0] Update from 4.6.5 to 4.7.0 or 5.0.0


[4.7./5.0] bootstrap process


[4.7./5.0] use basic theme from version 4.7 and 5.0 on


[4.7./5.0] widgets from 4.7/5.0


widgets from 4.8/5.1 (changes done for version 4.8/5.1, read older version before)


Personal tools