Оптимизация на PrestaShop

Помощен център

Оптимизация на PrestaShop

PrestaShop е едно от най-популярните приложения за изграждане на онлайн магазин, заради лесния мениджмънт на продуктите, както и персонализирани опции за плащане и доставка. PrestaShop предлага ефективно решение за вашия интернет бизнес, използвано от над четвърт милион онлайн магазини по света.

В тази статия ще ви дадем няколко насоки и съвети как да оптимизирате сайта си, за да избегнете ненужно забавяне за вашите потребители.

Ще започнем с няколко добри практики, които доказано намалят времето за отварянето на един сайт и оптимизират сървърните ресурси:

  • Активирайте Memcached на хостинг плана си – спестявате време от обработване на едни и същи MySQL заявки, които ще бъдат кеширани, а по този начин ще се увеличи скоростта на работа на вашия сайта. Можете да използвате и Redis, но Memcached е вграден в Prestashop и ще бъде по-лесният вариант за активация. За активацията на Memcached, трябва да използвате инструментa ActiveCache в контролния панел на хостинга.
  • Използвайте PHP 7 – новите PHP версии са значително по-бързи от PHP 5, дори само смяната на PHP версията ще подобри производителността на вашия сайт.
  • Активирайте CloudFlare – използването на CDN като CloudFlare + Railgun (наличен само при ICN.Bg) ще ви позволи да кеширате и статичното, и динамичното съдържание на вашия сайт, което ще бъде компресирано и доставено от най-близкия до потребителя сървър на CloudFlare.
  • Премахнете ненужните модули. Бъдете внимателни с модули, които записват движенията на клиентите по сайта ви, трупат статистика или логове. Понякога те записват прекалено много информация, която запълва и забавя базата данни или просто използват голямо количество ресурси на сървъра.
  • Преди да инсталирате нов модул ви препоръчаме да прочетете отзивите за него, както и да потърсите повече информация в Google, за да проверите дали има съществуващи проблеми с този модул.

Като конкретни стъпки за оптимизация можете да се свържете към административния панел на Prestashop и да изберете Advanced Parameters, после Performance. В категория Smarty, който се използва в разработката на Prestashop templates, активирайте следните опции:

Template compilation – Предлагаме ви да ползвате Recompile templates if the files have been updated. Най-бързата опция е Never recompile template files, но е препоръчително да я използвате само ако сте приключили с промените по уебсайта.

CacheYes. Съветваме ви да тествате и включен, и изключен кеш на Smarty преди да се спрете на правилната за вашия сайт опция.

Caching type - File System

Clear cache - Clear cache everytime something has been modified

optimizacia-prestashop

Следващата секция на PrestaShop, която е направена специално за оптимизация, се нарича CCC (COMBINE, COMPRESS AND CACHE) и там ще активираме всички опции като изберем Yes.

optimizacia-prestashop

Категория Ciphering – на полето Algorithm ще изберем опцията Use Rijndael with mcrypt lib, тъй като PHP модула mcrypt е инсталиран на всички сървъри на ICN.Bg.

optimizacia-prestashop

Последната категория, която ще променим е Caching, където първо ще активираме Use cache с Yes, а после и Memcached, който споменахме в началото на статията, с опцията Memcached via PHP::Memcache

optimizacia-prestashop

В други случаи е възможно Front-end (клиентска част на сайта) да е достатъчно бърз, но да изпитвате проблем със скоростта в Back-end (администрация), обикновено при добавяне или обработка на съществуващи продукти.

Първата стъпка към подобряване на скоростта на Back-end би била да изключите модулите един по един, за да тествате дали забавянето не е причинено от несъвместим модул.

Ако това не помогне, следващият тест би бил да активирате показването на грешки в PrestaShop, за да проверите дали няма PHP грешки в зареждането на сайтa. Можете да го активирате в администраторския панел на PrestaShop, като кликнете на Advanced Parameters, след това изберете Performance и в Debug Mode сложите двете опции на Yes.

optimizacia-prestashop

Важно: грешките ще се виждат и от вашите клиенти, затова ви препоръчаме да извършите процедурата в часове с нисък трафик към вашия сайт.

Ако ползвате по-стара версия на PrestaShop, активацията на грешки се извършва във файла config/defines.inc.php където на ред 29 заменяте кода:

define('_PS_MODE_DEV_',false);

със следния код:

define('_PS_MODE_DEV_',true);

Забавянето на Back-end може да бъде причинено също така и от проблеми в сървърите на PrestaShop, защото Вашият Back-end пуска до 6 заявки на всяка страница в административния панел към следните адреси:

  • prestashop.com
  • addons.prestashop.com
  • api.prestashop.com
  • translations.prestashop.com

В случай, че не сте открили причината за бавно зареждане на Front-end или Back-end, ви съветваме да се свържете с нашите Friendly Geeks, които имат необходимия набор от знание и инструменти за да открият източника на забавяне.