Child pages
  • Troubleshooting
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Table of contents

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.

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 installation's /config/defines.inc.php file. You should edit the following line:

define('_PS_MODE_DEV_', false);

...and change it into:

define('_PS_MODE_DEV_', true);

Then refresh the web page.

If it displays an error, contact the PrestaShop support team at http://support.prestashop.com/en/

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: http://faq.oneandone.co.uk/scripting/php/10.html

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.

It is impossible to connect anymore. What can I do?

There are cases when PrestaShop will not recognize a user's e-mail or password, making it impossible to connect to the back-office. The user is simply sent back to the login screen. Some reports tend to point that IE10 is the only browser where this happens.

This is most probably an issue with the user's browser cookie for your store: when the user repeatedly logs in and out of the store, the cookie's encryption keys can get mixed up.

In any case, one easy way to fix this and to be able to log in again is to clear the browser's cache and cookies. Here is page explaining how to do just that, depending on the browser: https://support.google.com/mail/answer/32050?hl=en.

How to regenerate a password and update the database manually?

There are situations where nothing happens when you request a new password, and it doesn't work. There can be a number of reasons why this would happen, 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 http://www.miraclesalad.com/webtools/md5.php
    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 the "md5" button: 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 first name, last name, and e-mail address), and click its "Edit" button.
    3. Find the passwd field, and paste in the MD5 that you just generated.
  4. Log in to 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, use phpMyAdmin to access the ps_shop_url table and check the value of the main shop, whose id is 1. 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 at http://support.prestashop.com/en/.

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 default language pack?

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

Here how to solve this if the default language was English:

  1. Go to phpMyAdmin. If you cannot access it, ask your host to perform these actions.
  2. Select your shop's database, and select the ps_lang table.
  3. Click the "Insert" button at the top, and create a new entry with these values:
    • id_lang -> 1
    • name -> English
    • active -> 1
    • iso_code -> en
    • language_code -> en
    • date_format_lite -> Y-m-d
    • date_format_full -> Y-m-d H:i:s
    • is_rtl -> 0
  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 "Localization" menu, and its "Languages" page.
  2. Add a new language: click the "Add" button on the top right of the table. Fill in the various fields:
    1. The name must be clearly labeled: English, French, Danish, Chinese.
    2. The ISO code must be from the ISO 636-1 list: http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes. Be very precise: the system will check whether a language pack already exists for that ISO code
    3. PrestaShop uses FamFamFam's flag set, which you can download here: http://www.famfamfam.com/lab/icons/flags/.
    4. Don’t forget to activate the language.
    5. Save your changes.
  3. In order to help you get started with the translation, you must copy the strings from the another installed language to your own:
    1. Go to the "Translations" page of the "Localization" menu.
    2. In the "Copy" section: use the default language along with the default theme in the From fields, and your new language along with its theme for the To fields. 
  4. Then you can start translating:
    1. Got to the "Modify translations" section at the top of the "Translations" page.
    2. Choose "Front Office Translations" in the drop-down list, then click on the flag of your new language.
    3. Start translating the fields.
    4. Click "Save the modifications" once it all seems correct to you.
    5. Repeat this step for each type of translation ("Back Office", "Modules", etc.).
  5. Your own language is now totally translated! Test, test, test! Have your friends test it too!

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 [email protected] with as subject "New translation: XX" with "XX" being ISO code of the language (http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes).

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

  • No labels