Troubleshooting

Table of contents

/*<![CDATA[*/ div.rbtoc1597330886204 {padding: 0px;} div.rbtoc1597330886204 ul {list-style: disc;margin-left: 0px;} div.rbtoc1597330886204 li {margin-left: 0px;padding-left: 0px;} /*]]>*/

Troubleshooting

How to modify a page's display?

You have to add your own selectors in your theme's CSS file. This file is usually found in /themes/YOUR_THEME/css/global.css.

Once created, you can use your selectors in the .tpl page you want to modify.

How to create your own page/template?

You can also create your own .tpl file (located in your theme directory), where you can insert your own HTML tags, and create a .php page (at the root of your shop) which will call the .tpl file.

Here is an example:

First, your_page.php:

<?php
include(dirname(FILE).'/config/config.inc.php');
include(dirname(FILE).'/header.php');

$smarty->display(PS_THEME_DIR.'your_page.tpl');

include(dirname(FILE).'/footer.php');
?>

With that, your_page.tpl contains your HTML code.

How to generate the .htaccess file with PrestaShop's back office, in order to get Friendly URL?

The .htaccess file, located at your shop root, enables you to set some environment variables (like the PHP version). You can also use to customize the URL-rewriting rules, and control the access to some directories and some other actions.

VERY IMPORTANT:

First thing to do: make a backup of your existing .htaccess file if any, locally or online.

  • Online. If you want to use the URL-rewriting facility, make sure that your host allows it first. Contact them

  • Locally. Here is an example with WAMP on Windows:

    • Left click on WampServer's taskbar icon (WampServer must be installed and running already).

    • In the "Apache" menu, select "Apache modules".

    • Check rewrite modules.

    • Restart the Apache server (it might be automatic).

Once Apache is configured, if there is no .htaccess file in your shop's root directory yet, create an empty one:

  1. Create an empty file on your desktop with a simple text-editor, such as Windows's Notepad (not Word!) or OS X's TextEdit.

  2. Save the file as htaccess.txt, in a folder where you can easily find it. If possible, save it as an purely ASCII or ANSI file.

  3. Upload it to your server using an FTP client, such as FileZilla. Put the file at the root of your shop's directory.

  4. Change its permissions to read and write everyone (CHMOD 666 in Unix), with your FTP client for instance).

  5. Go to the PrestaShop back-office, and under the Preferences tab and "SEO & URLs" sub-tab, enable "Friendly URL" (bottom of the page).

  6. Go to the "Tools" tab, then the "Generators" sub-tab, and click the "Generate the .htaccess file" button.

Warning: it will overwrite the existing one. If it was an empty file, that's okay, but if you have specific instructions in this existing, you should first move them over to the text-field in the "Generators" sub-tab, so that they are still found in the .htaccess file. If you forget to move your existing .htaccess instructions over, you risk putting your shop offline.

Now that it is enabled, the URL-rewriting should be working fine, which means that URL like this:

http://www.myprestashop.com/product.php?id_product=2

...will be replaced by...

http://www.myprestashop.com/musique-ipods/2-ipod-shuffle.html

In case of unexpected and persistent blank page, how to turn error message display on?

If your back-office and/or front-office start displaying a bank or incomplete page regularly without any error message, it is necessary to activate the display of the PHP errors in order to understand the problem.

This is done in your PrestaShop install's /config/config.inc.php file. You should edit it in order to add the following lines:

@ini_set('display_errors', 'on');
define('PS_DEBUG_SQL', true);

Then refresh the web page.

If it displays an error, contact PrestaShop support at support@prestashop.com.

Note that it could also be a .htaccess issue. Read the previous entry, "how to generate the .htaccess file".

How to correctly import accentuated content using a CSV file?

If you make a CSV Import with accentuated texts, beware to select UTF-8 or iso-8859-1 in the "Import" sub-tab of the "Tools" tab, and be sure that the .csv file has been saved with the same encoding.

If needed, save the CSV file from you text-editor (such as Notepad), specifying the right encoding.

Hosted at 1&1: How to solve the memory allocation issue?

Some people may encounter memory allocation issues, particularly when the back-office tries to display images which are quite big in the disk (over 800 Kb). Know that even if you increase the memory limit to 128 Mb, some host, such as 1&1, will keep the limit at 32 Mb. See this FAQ from 1&1.

There are only two solutions, and they are both drastic:

  • Decrease the size of your pictures in pixels, and thus their size on the disk. This will also most probably improve the overall performance.

  • Change host for one that support memory increase.

How to regenerate a password and update the database manually?

There are cases when PrestaShop will not recognize your e-mail or password when connecting, and nothing happens when you ask for a new password. There can be a number of reasons for this, but the important thing is to be able to log in again. This is will require you to access your database, using phpMyAdmin for instance.

You will have to follow the following procedure:

  1. Open the /config/settings.inc.php file, from your shop's root directory. Find the line containing "COOKIE_KEY". Copy the cookie content (without the quotes): it is the MD5 for your original password.

  2. You now need to generate a new MD5 hash for your password:

    1. Go to md5.fr

    2. Paste the cookie content in the text-field, and right after it, add your desired password. For instance, xykxB41JrEacRIoZxDioPNRmKeuO3ixCLygNxBAkeOkAHf2YUVESuT9jMYPASSWORD, where the cookie ends with T9j, and the desired password is MYPASSWORD (it can be anything you want).

    3. Click on "Convertir en MD5": this will produce a MD5 hash of the text-field's content. Copy it.

  3. You now need to put this hash into your database:

    1. Open you shop's database using phpMyAdmin. If you don't know how to use phpMyAdmin, ask your webmaster, or your host.

    2. Open the "pw_employee" table, find the row corresponding to your account (it should feature your firstname, lastname, and e-mail address), click its "Edit" button.

    3. Find the "passwd" field, and paste in the MD5 that you just generated.

  4. Log in in your back-office with the email listed in the same table, and the desired password that you used above (MYPASSWORD). This will generate a new cookie key.

If it still doesn't work, open the /config/settings.inc.php file and check the value of the "PS_BASE_URI" variable. It should contain the shop's file path:

  • If your shop is at the root of the server, this variable should contain "/".

  • If your shop is in a sub-directory, it should contain it. For instance, if it's at http://www.mywebsite/shop/", then the variable should contain "/shop/".

If all fails, contact the PrestaShop support team.

How to change the maximum size of uploaded files to your server?

To change the maximum size of the uploaded files in your server, you have to edit the php.ini file for your PHP install. This can only be done if you do have access to your server's PHP configuration files. If not, ask your host.

If you do have access to php.ini, open it and edit the following lines:

post_max_size = [anything]
upload_max_filesize = [anything]

If you want to set the maximum to 200 megabytes, change their values to

post_max_size = 200M
upload_max_filesize = 200M

Finally, restart the server to take your changes into account.

How to add a link or an image to customize the mails sent to your customers?

PrestaShop enables you to automatically send a large number of mails to your customers (order confirmations, site subscriptions, out of stock notifications, etc.). It might be useful to customize these mails: adding images, links to survey forms or information pages (blogs, news, etc.).

Let's say your company wants to customize the e-mail sent automatically to customers after a purchase, in order to redirect them to a survey form.

To add a link in the mails sent to your English-speaking customers, you have to:

  1. Go to the /mails/en directory from your shop root.

  2. Edit the HTML template relative to the mail you want to modify: for instance, order_conf.html is the e-mail sent for new orders.

  3. Insert the link to the survey right in the HTML code (static):

    <a href="http://www.myshop.com/survey.php">Click here if you want to participate to our survey !</a>

    or a dynamic link with your logo:

    <a href="{shop_url}" title="{shop_name}"><img alt="{shop_name}" src="{shop_logo}" style="border:none;"></a>
  4. (Optional) To change the default color (which is pink: #DB3484), change the hexadecimal value to your preferred color value.

  5. Save the file.

Now the link will be added in every new mail sent after a purchase.

how to log in after deleting the English language pack?

In the event that you deleted the English language pack from your shop install, you can have issues connect to your back-office again.

Here how to solve this:

  1. Go to phpMyAdmin. If you can access it, ask your host to perform these actions.

  2. Select your shop's database, and select the ps_lang table.

  3. Click "Insert", and create a new entry with these values

    • id_lang -> 1

    • name -> English

    • active -> 1

    • iso_code -> fr

  4. Execute the query. You should be able to log in again.

How to create a new translation

Follow these steps:

  1. Go to your PrestaShop back-office, in the "Tools" tab, and its "Languages" subtab.

  2. Add a new language.

  3. Note: You can download the flags used in PrestaShop. Don’t forget to activate the language.

  4. Go to the "Translations" tab.

  5. In the "Copy" section: select "English, prestashop" to "Your language, prestashop", then click "Copy".

  6. In the "Modify translations" section: choose "Front Office Translations" in the drop-down list, then click the flag of the new language. Begin to translate the fields. Click "Save the modifications" once it all seems correct to you.

  7. Repeat the last step for each type of translation ("Back Office", "Modules", etc.).

  8. Your version of PrestaShop is now totally translated! Test, test, test! Have your friends test it too!

  9. If you want to contribute it to the PrestaShop project, you can propose your new translation to the PrestaShop Team. In the "Export a language" section, select the new language; in the following fields select "prestashop" then click "Export". Save this file and send it to contact@prestashop.com with as subject "New translation: XX" with "XX" being ISO code of the language.

  10. You have contributed to the PrestaShop project! Thank you so much!

Last updated