<< Previous page

Next page >>

Table contents

Understanding The Advanced Parameters

Configuration Information

This page serves as a handy reminder of your PrestaShop configuration: version, server info, PHP version, a MySQL version. All these prove really useful when you need to report an issue to the PrestaShop developers, or simply your webmaster or web host.

There is one last section, titled "List of changed files". Right after you have first installed PrestaShop, the only thing that this section displays is "No change has been detected in your files".
But after you've installed some modules and a couple of themes, made advanced changes to some override classes or deleted files altogether, this list will show the difference between your current installation of PrestaShop and what it used to look like in its pristine state. This helps you see what changes have been made to your installation... and therefore what to take into account if you want to update your store manually, or if you are moving files to a new server.

Even with a fresh installation, this section might indicate ".gitattributes", ".gitignore", "CONTRIBUTING.md", "CONTRIBUTORS.md" or "README.md" as missing files. These are Git-specific files, and PrestaShop does not use them, so you should not worry about them.

 

Performance

This page combines many tools and tips that might help you improve your shop's performance server-wise – not sales-wise, although a server that performs well is able to serve more customers, and therefore make more sales.

Smarty

Smarty is the name of the template language used by PrestaShop's themes. You can learn more about it at http://www.smarty.net/.

There are three options:

Optional features

New in 1.5.

Some PrestaShop features can be disabled if you do not use them, as they can slow down your shop.

If your catalog currently has products which make use of these features, then you will not be able to disable them. You will have to delete some data before you can turn them off.

You can disable the following catalog features:

Combine, Compress and Cache (CCC)

CCC is a set of tools aimed at minimizing server load and theme loading time.

It does what it says: it combines textual files of the same type into one bigger files, which makes for fewer files to download; it then compresses the file using the common Zip algorithm, which makes for faster downloads; finally, it caches the compressed file, so that the server does not have to do this process every time a page is loaded, which relieves the burden on the server's processor.

Your theme must completely compatible with at least PrestaShop 1.4, otherwise CCC will not work as expected. This is why most options are disabled by default.

Media servers

This section enables you to redirect part of your traffic (image and video files, for instance) to other servers under your control, through other domains or sub-domains – most often, the files are hosted on a CDN (Content Delivery Network). By default, PrestaShop supports up to 3 media servers.

Putting your store's domain name in those fields is not the proper way to get fantastic performance. That being said, it is easy to set up a media server, and the benefits are real and almost immediate. Here is how:

  1. Open an account at a new host, preferably one who is specialist of distributed content. The most popular are Akamai (http://www.akamai.com/), Amazon (with its AWS services, among which is CloudFront: http://aws.amazon.com/) or CloudFlare (http://www.cloudflare.com/). You should also ask your own host, maybe it has a CDN service you can subscribe to.
  2. Copy your media files to that host's server. This means that the CDN server must contain an exact copy of the following folders from you store's main server: /img, /themes et /modules.
    Reminder: you must make it so that these folders are always synchronized: even if you you add new products or change your theme, the CDN server must contain the latest version of all these files.
  3. Once the CDN server is in place, add the web address (as given by your CDN host) in the first field, "Media server #1". If that host allows for more web addresses, add them.

In case you would rather that your files are still visually downloaded from your domain name rather that from an unknown domain name, follow this process:

  1. Create a subdomain for your store's domain name, for instance http://cdn1.mystore.com (the way to do that depend on your host, ask him about it).
  2. Put a .htaccess file at the root of the subdomain. That file should contain a single line:

    Redirect Permanent / http://cdn-adresse.com


    Replace the http://cdn-adresse.com with the one from your CDN server. This way, you are creating an automatic redirection from your subdomain to your CDN server.

  3. Once the subdomain is in place, add it in the first field, "Media server #1". If that host allows for more web addresses, create as many subdomains to your store's main domain name.

Cyphering

Cyphering means encrypting data so as to render it unreadable to unwanted eyes. Your costumers' account details, as well as your own, are protected by cyphering.

Here you can choose the algorithm you prefer:

Therefore, choose wisely.

Caching

Your server's cache stores static versions of your dynamic web page, in order to serve these to your customers and thus reduce server load and compiling time.

Most of the time, you should first check with your web host about this setting, as it requires special settings on the server.

This section enables you to choose to enable caching, and choose the caching method:

The last three options display a field set to "1" by default. This is the file-system directory depth. Only change this value when you know what you are doing.

E-Mail

E-mail

The first setting, "Send e-mail to", is a front-end one. At the end of the checkout process, a client can leave a message to you staff. You can choose to whom this message will be sent by selecting from the drop-down list.

Next in the "E-mail" section are settings: configure PrestaShop to send emails to your customers. We strongly advise you that you consult your web host to determine which settings to use for this feature.

Your shop sends many messages throughout all the steps of registration and placing an order. Here, you can configure how these messages will be sent. By default, it is advisable to use the first option of sending information to "Use the PHP mail() function".

In the event that this does not work, then use the second option, "Set my own SMTP parameters". In this case, a new section appears, with more fields. The information for these fields should be provided by your web host: mail domain name, SMTP server, SMTP user, etc. Make sure to transcribe exactly what your web host provides you with.

The configuration information can be provided to you either by:

Your web host can tell you whether or not your username is mandatory, as well as the password information, and the encryption to use.

For example, in the case of Gmail (the e-mail service offered by Google), you might have to enter information such as the following one:

Test your email configuration

Once you have configured your e-mails using one of the two available methods, enter your own e-mail address in this section, then click the "Send an e-mail test" button.
Now check the inbox of the address provided to verify that you indeed have received the test e-mail. If you have not received it, update your configuration with the correct information.

Multistore

This page is only available when you enabling the multistore feature.

Turning your single-shop PrestaShop installation into a multi-shop one is very simple:

  1. Go to the "Preferences" menu and select the "General" page.
  2. Find the "Enable multistore" option, select "Yes".
  3. Save your changes.

The "Advanced Parameters" menu will now feature the "Multistore" page, which is presented in details in the "Managing multiple shops" chapter of this guide.

CSV Import

CSV is an acronym of "Comma-separated values". It is an popular plain-text format when there is a need to import, export or simply store data in a non-proprietary format. Almost all data handling tool support CSV format, in various incarnations. You can read more about the CSV format on Wikipedia: http://en.wikipedia.org/wiki/Comma-separated_values.

The CSV import page enables you to easily fill your product catalog when you have a very large amount of products, or to import data that you exported and converted from another e-commerce tool.

The import process requires preparation, and starts with a form made of primary settings:

When changing the Entity setting, the section on the right, titled "Available fields", changes to present the expected data fields. Although the importing tool helps you by taking care of matching your file's fields with PrestaShop's, you should strive to make your data more import-friendly by following the naming scheme and order of the presented fields. If not, the import will be more tedious, but not impossible.
Some fields have a little information popup available on their right, which you can display by hover the mouse cursor over it. They mostly pertain to PrestaShop's multistore feature. Make sure to read them all in order to better build/edit your data files.

Data format

Imported data file must be in text-file, using a CSV-based format and the accompanying .csv file extension. We recommend using a semicolon ";" as a separator.

You can create such a file using any text editor (we recommend Notepad++: http://notepad-plus-plus.org/), but we do advise you to use a spreadsheet program, then save your work in the CSV format. Using a spreadsheet program enables you to have an easier and more visual grasp of your data, in comparison to the plain text file. You can use the commercial Microsoft Excel (http://office.microsoft.com/en-us/excel/ or the free OpenOffice.org http://www.openoffice.org/ Calc.

Here is a sample import file, for a list of products:

"Enabled";"Name";"Categories";"Price";"Tax rule ID";"Buying price";"On sale";"Reference";"Weight";"Quantity";"Short desc.";"Long desc";"Images URL"
1;"Test";"1,2,3";130;1;75;0;"PROD-TEST";"0.500";10;"'Tis a short desc.";"This is a long description.";"http://www.myprestashop/images/product1.gif"
0;"Test 02";"1,5";110;1;65;0;"PROD-TEST2";"0.500";10;"'Tis also a short desc.";"This is a long description too.";"http://www.myprestashop/images/product2.gif"
1;"Test 03";"4,5";150;1;85;0;"PROD-TEST3";"0.500";10;"'Tis a short desc. again";"This is also a long description.";"http://www.myprestashop/images/product3.gif"

Note that this is only a regular sample files built for this demonstration; it is purposefully not optimized for PrestaShop importation. If you need a sample file you can learn from, use the ones you can download from the "Upload" button's form.

The first row should be a descriptive name for the data column (you will be able to skip it during the import process). There must be the same number of columns on each row.

You should remember that:

Uploading the file

Once you have all your data in CSV format, you can upload them to your store's database using the form in this page. Choose your file(s) from your computer by clicking on the "Upload" button, click the "Browse" button to find your file, then click the "Upload" button to mark it as chosen. Do this as many times as necessary to list all your import files.

Once your files are all listed in the "Your CSV file" section, you can proceed with the rest of the form:

  1. Select the type of data contained in your file, using the drop-down list named "What kind of Entity would you like to import?". Once you have selected the type of data, the list of the available fields appears on the right, which helps you refine your CSV file – at least for the order of the columns, which will soon prove handy.
  2. Select the language of the imported content. If the target language is not available, you must install it first, in the "Languages" page under the "Localization" menu.
  3. Select the file encoding. Simply indicate if the file uses ISO-8859-1 or not. If not, then it is assumed the files use UTF-8.
  4. Select the field separators. We suggest that you leave the default values ("field separator" with a semicolon ";", "multiple value separators" with a comma ","). But obviously, if your CSV file is built differently, you should change these values accordingly.
  5. If you want to remove all the products in your catalog before importing, select the appropriate option.
  6. Once all your choices have been made, click "Next step".

All import files are uploaded directly in the admin folder's /import sub-folder. If the CSV File drop-down menu gets too crowded, you can delete old imports directly using your FTP client.

When clicking the "Next step" button, the page reloads with the matching tool. This interface helps you match you file's data columns with the ones required by PrestaShop.

Presented in this table are the rows from your CSV file, placed under arbitrary columns matched to PrestaShop's database needs. It is up to you to make sure that all the columns from your CSV file are matched with the correct column header, using each header's drop-down menu, so as to import your content correctly.

For instance, with our sample file:

The screen cannot contain all of your data's columns, so click the ">>" and "<<" buttons to move around the columns, and match them all correctly.

In our example, we used the first row for columns indicators. Since we do not this one imported, enter "1" in the "Skip X lines" text-field.

Once you are done matching your columns, click the "Import .CSV data" button (top right of the screen), and PrestaShop will start the importing process. When the process is done, you are sent to the main screen, which should either confirm that everything has indeed been imported, or give you a notice of all the encountered problems. In this second case, you should review your CVS file and make sure to correct everything.

Matching configurations

The matching process can be a tedious task if you cannot customize your CSV files columns order according to that used by the PrestaShop importer, and even more so if you have to do that repeatedly or frequently. That is why PrestaShop includes a small tool to save the current matching order that you have set up using all the headers drop-down menus.

The tool is a simple field at the top of the matching tool. You can do the three basic actions:

DB backup

A backup is the action of saving the content of your database into files that you store in a safe place. The point is that you can revert to them in case your database fails on you.

You must perform regular backups of your shop, so that in case of a crash, you can reboot your shop quickly and in the best conditions. The database contains all the information in your shop, many of which are indispensable for PrestaShop to work correctly – and that's not talking about your products, categories and other data you added since the installation.
The more often you perform backup, the safer you are. Once a week is a minimal frequency.

To create database backups of your shop, you have several solutions. You can use tools such as phpMyAdmin (reserved for advanced users), or use the one integrated into PrestaShop: the "DB backup" page.

The page starts with two big notices. You should read both completely in order to have a better idea of what the page does.

The "Disclaimer" section on the left gives you a series of reminders about backups, which you should read every time you make a backup. The section ends with the "I have read the disclaimer - Create a new Backup" button, which you have to click in order to create a backup. Once created, the backup appears in the list below the notices.

The "How to restore" section on the right gives you tips on how to get your data back into PrestaShop in case of failure. You should commit this to memory, or at least save this information somewhere in case a database crash makes it impossible for you to access the PrestaShop administration – and thus the DB backup page – again.

The table below the notices lists all the backups that have already been made, indicating the date of creation, age, file name and size.
At the right of each row are two icons:

After each backup process, you should download the generated backup file by clicking on its "View" icon, or simply by using the link in the notification box at the top.

Your database is saved using the standard SQL format and its .sql file extension, and compressed using the BZip2 algorithm (simply put, a variant of the popular Zip format. Read more: http://en.wikipedia.org/wiki/Bzip2) and its .bz2 file extension. That gives a file archive with the .sql.bz2 file extension.
Put your backup file in a safe place, for you might need it at any given time. Furthermore, you can find these backups directly on your server, in the /backup folder, under your custom-named /admin folder.

Backup Options

At the bottom of the screen, two options are available:

SQL Manager

New in 1.5.

The SQL manager is a complex feature, which should be reserved to technical people who know how to explore a database using the SQL language. In return for this complexity, it can be extremely powerful and prove immensely useful to those who master it.

This tool enables you to perform SQL queries directly on the PrestaShop database, and save them for use at any later time. Indeed, PrestaShop presents its database data in many ways, but you might need something more, or more simply, something rawer than PrestaShop's clean interface. Using the SQL manager you can perform complex queries which build upon tables of data in the way YOU need them.
For instance, using this tool and your knowledge of SQL, you could create a reusable query giving you an updated list of the clients who are subscribed to your newsletter, or get a list of products in HTML or CSV format.

For security reasons, some types of queries are not allowed: UPDATE, DELETE, CREATE TABLE, DROP, etc. In short, you can only read data (SELECT query).

Also, secure keys or passwords are hidden (***********).

Creating a new query

As usual, the "Add New" button leads to the creation form. It has two main fields:

Additionally, the "List of MySQL Tables" section helps you explore the database, and makes it easier for you to build your queries. It gives you a handy and clickable selector of all the currently available database tables. Select a table to make PrestaShop display its attributes and types, then click "Add attribute" to send its name into the "Request" field.

Saving the form sends you back to the main page, with its list of queries.

Starting a query

Each saved query in the table has four icons to the right of its row:

Settings

There is only one setting at this time:

Some sample queries

The possibilities are endless, but here are a few sample queries to help you build your own.

Listing all the e-mails address of all the customers

SELECT email FROM ps_customer

Listing all the e-mails address of all the customers who are subscribed to your newsletter

SELECT email
FROM ps_customer
WHERE newsletter = 1

Listing all the products which are active and have a description in French

SELECT p.id_product, pl.name, pl.link_rewrite, pl.description
FROM ps_product p
LEFT JOIN ps_product_lang pl ON (p.id_product = pl.id_product)
WHERE p.active = 1
AND pl.id_lang = 4

Listing all the orders, with details about carrier, currency, payment, total and date

SELECT o.`id_order` AS `id`,
	CONCAT(LEFT(c.`firstname`, 1), '. ', c.`lastname`) AS `Customer`,
	ca.`name` AS `Carrier`,
	cu.`name` AS `Currency`,
	o.`payment`, CONCAT(o.`total_paid_real`, ' ', cu.`sign`) AS `Total`,
	o.`date_add` AS `Date`
FROM `ps_orders` o
LEFT JOIN `ps_customer` c ON (o.`id_customer` = c.`id_customer`)
LEFT JOIN `ps_carrier` ca ON (o.id_carrier = ca.id_carrier)
LEFT JOIN `ps_currency` cu ON (o.`id_currency` = cu.`id_currency`)

Logs

Errors happen. Most of the time, you are not aware of them because PrestaShop handles them silently. But you might want to know about them, in order to be able to correct the most regular ones, and insure a better stability for your shop.

The "Logs" page is where you can have a look at the PHP errors which plague your shop. They are listed in the page's central table, and are presented in 4 levels:

These explanations are the official ones from the PHP manual. Read more: http://www.php.net/manual/en/errorfunc.constants.php.

These error levels also serve as values for the "Logs by e-mail" feature.
PrestaShop adds one last value, 5, which indicates that the administrator does not want to receive any notification, either for minor or major errors.

The error logging tool enables you to receive a notification when an error occur. Notifications are sent to the shop owner's e-mail address, and you can configure the degree of importance at which you should start receiving such e-mails: use "1" if you want to know about everything, even the tiniest information; "3" if you only want to know about issues (errors and major issues); "4" if you only want to keep the major issues. The default is "5", meaning that no notification is sent.

Webservice

A Web service is a method of communication between two electronic devices over a network. It relies on a known set of methods, formats and access rights, so as be able to use the webservice's content on any other authorized tool, and build upon the original content. Read more about it on Wikipedia: http://en.wikipedia.org/wiki/Web_service.

In this page, you can enable your shop's webservice, so that third-party tools can access your data. This potentially makes it possible for interesting tools to help you or your customers make better use of your shop (such as mobile applications).

The page starts by listing the currently existing webservice keys in a table. A webservice key is a unique access that you grant to a developer, which can be used to tie a tool to your shop. Share them sparingly, as you might not always want everyone to access your data.

Not any app can access your shop through the PrestaShop webservice: you decide which can, and what they are allowed to do. Every app has a unique connection key, with specific access rights.

Adding a new key

The "Add new" button takes you to the webservice key creation form:

Configuration

For security reasons, make sure your shop's server supports secure SSL connection!

The configuration is pretty easy:

Developers can find our documentation on how to build a tool around PrestaShop's webservice at this address: http://doc.prestashop.com/display/PS15/Using+the+PrestaShop+Web+Service.

<< Previous page

Next page >>