Difference between revisions of "Configuration"

From Aimeos documentation

 
(14 intermediate revisions by the same user not shown)
Line 1: Line 1:
<languages/>
 
 
__TOC__
 
__TOC__
  
  
<translate>
+
<!--T:18-->
 +
<div class="version"><span class="current">2018.x+ version</span><ul class="history">
 +
<li>[https://aimeos.org/docs/index.php?title=Configuration&oldid=89785 2017.x]</li>
 +
<li>[https://aimeos.org/docs/index.php?title=Configuration&oldid=49563 2016.x]</li>
 +
<li>[https://aimeos.org/docs/index.php?title=Configuration&oldid=23111 2015.x]</li>
 +
</ul></div>
 +
 
 
<!--T:1-->
 
<!--T:1-->
 
Aimeos is extremely configurable and most of the things can be changed, replaced or adapted. Thus, there are a lot of configuration options available. This pages tries to categorize the available options and gives an introduction to the different areas.
 
Aimeos is extremely configurable and most of the things can be changed, replaced or adapted. Thus, there are a lot of configuration options available. This pages tries to categorize the available options and gives an introduction to the different areas.
Line 22: Line 27:
 
* [[Symfony/Change_configuration|Symfony]]
 
* [[Symfony/Change_configuration|Symfony]]
 
* [[Laravel/Change_configuration|Laravel]]
 
* [[Laravel/Change_configuration|Laravel]]
 +
* [[Flow/Change_configuration|Flow]]
  
 
<!--T:6-->
 
<!--T:6-->
Line 29: Line 35:
  
 
<!--T:8-->
 
<!--T:8-->
The list of frontend related configuration options consists of the options available in the "HTML clients" and the frontend controllers. The HTML clients are responsible for generating the HTML code that is sent to the browser. The frontend controllers process the incoming requests using the given parameters and providing data to the HTML clients.
+
The list of frontend related configuration options consists of the options available in the "HTML clients", the JSON REST API and the frontend controllers. The HTML clients are responsible for generating the HTML code that is sent to the browser. By using the JSON REST API, you can build your own, dynamic frontend or mobile app. The frontend controllers process the incoming requests using the given parameters and providing data to the HTML/JSON clients.
  
 
<!--T:9-->
 
<!--T:9-->
 
* [[Configuration/Core/client/html|Shop HTML frontend]]
 
* [[Configuration/Core/client/html|Shop HTML frontend]]
 +
* [[Configuration/Core/client/jsonapi|Shop JSON REST API]]
 
* [[Configuration/Core/controller/frontend|Shop frontend controller]]
 
* [[Configuration/Core/controller/frontend|Shop frontend controller]]
  
<!--T:10-->
+
== Controller settings and cronjobs == <!--T:12-->
Developers can replace every used class by their own implementation. To use the new class, it's name must be added to the configuration so it will be instantiated:
 
 
 
<!--T:11-->
 
* [[Configuration/Core/classes/client/html|HTML frontend classes]]
 
* [[Configuration/Core/classes/controller/frontend|Frontend controller classes]]
 
 
 
== Cronjobs == <!--T:12-->
 
  
 
<!--T:13-->
 
<!--T:13-->
Line 48: Line 48:
  
 
<!--T:14-->
 
<!--T:14-->
 +
* [[Configuration/Core/controller/common/media|Media controller related]]
 +
* [[Configuration/Core/controller/common/order|Order controller related]]
 +
* [[Configuration/Core/controller/common/product|Product controller related]]
 
* [[Configuration/Core/controller/jobs|Scheduler jobs]]
 
* [[Configuration/Core/controller/jobs|Scheduler jobs]]
* [[Configuration/Core/classes/controller/jobs|Job classes]]
 
  
 
== Administration interface == <!--T:15-->
 
== Administration interface == <!--T:15-->
  
<!--T:16-->
+
<!--T:19-->
The default administration interface is build on the ExtJS Javascript library and allows editors to manage all types of shop related content. The ExtJS interface itself displays the available content and enables editors to add, delete and edit content. The controllers are responsible for processing the change requests and to hand the changed data to the MShop library for storing it. The controllers can be exchanged by different implementations when configuring different class names.
+
There are two administration interfaces available. The default one is based on HTML and Javascript and optimized for being very intuitive so everyone can use it without reading much documentation.  
 +
 
 +
<!--T:20-->
 +
* [[Configuration/Core/admin/jqadm|JQAdm admin interface options]]
 +
 
 +
<!--T:24-->
 +
Additionally, there's the JSON REST API for administration that enables you to manage the shop data from 3rd party systems. It's also used by the default admin interface for retrieving and modifying data without page reloads.
 +
 
 +
<!--T:25-->
 +
* [[Configuration/Core/admin/jsonadm|JSON REST API admin interface options]]
 +
 
 +
== Core library == <!--T:21-->
  
<!--T:17-->
+
<!--T:22-->
* [[Configuration/Core/client/extjs|ExtJS admin interface]]
+
All classes that are related to administrative tasks are part of the MAdmin library:
* [[Configuration/Core/controller/extjs|ExtJS controller options]]
+
* [[Configuration/Core/madmin/common|Common settings]]
* [[Configuration/Core/classes/controller/extjs|ExtJS controller classes]]
+
* [[Configuration/Core/madmin/cache|Caching]]
 +
* [[Configuration/Core/madmin/job|Job managment]]
 +
* [[Configuration/Core/madmin/log|Logging]]
  
</translate>
+
<!--T:23-->
 +
The implementation of shop related managers is done in the MShop library:
 +
* [[Configuration/Core/mshop/attribute|Attributes related]]
 +
* [[Configuration/Core/mshop/catalog|Catalog (categories) related]]
 +
* [[Configuration/Core/mshop/common|Common settings]]
 +
* [[Configuration/Core/mshop/coupon|Coupon related]]
 +
* [[Configuration/Core/mshop/customer|Customer related]]
 +
* [[Configuration/Core/mshop/index|Index (product search) related]]
 +
* [[Configuration/Core/mshop/locale|Locale (site/language/currency) related]]
 +
* [[Configuration/Core/mshop/media|Media files related]]
 +
* [[Configuration/Core/mshop/order|Order and basket related]]
 +
* [[Configuration/Core/mshop/plugin|Plugin (basket events) related]]
 +
* [[Configuration/Core/mshop/price|Price related]]
 +
* [[Configuration/Core/mshop/product|Product related]]
 +
* [[Configuration/Core/mshop/service|Service (payment/delivery) related]]
 +
* [[Configuration/Core/mshop/stock|Stock related]]
 +
* [[Configuration/Core/mshop/supplier|Supplier related]]
 +
* [[Configuration/Core/mshop/tag|Tagging related]]
 +
* [[Configuration/Core/mshop/text|Text related]]

Latest revision as of 10:12, 12 July 2019


2018.x+ version

Aimeos is extremely configurable and most of the things can be changed, replaced or adapted. Thus, there are a lot of configuration options available. This pages tries to categorize the available options and gives an introduction to the different areas.

Some configuration options are relevant for shop owners but most of them are useful for developers. The links below contain a listing of all available options for each target audience:


Please have a look at the documentation specific to the application you are using to find out how you can set the configuration options properly:

The sections below divide the configuration options into different areas they apply for.

Frontend

The list of frontend related configuration options consists of the options available in the "HTML clients", the JSON REST API and the frontend controllers. The HTML clients are responsible for generating the HTML code that is sent to the browser. By using the JSON REST API, you can build your own, dynamic frontend or mobile app. The frontend controllers process the incoming requests using the given parameters and providing data to the HTML/JSON clients.

Controller settings and cronjobs

There are some things a shop has to do regularly to work properly like sending confirmation e-mails, decrease the stock level of products bought and so on. These scheduler tasks are called job controllers in the Aimeos context. Their implementations can be exchanged as well when configuring different class names.

Administration interface

There are two administration interfaces available. The default one is based on HTML and Javascript and optimized for being very intuitive so everyone can use it without reading much documentation.

Additionally, there's the JSON REST API for administration that enables you to manage the shop data from 3rd party systems. It's also used by the default admin interface for retrieving and modifying data without page reloads.

Core library

All classes that are related to administrative tasks are part of the MAdmin library:

The implementation of shop related managers is done in the MShop library: