Эта версия является форком PrestaShop 1.4.9.1, переехавшего на гитхаб и включает в себя русский перевод, обновление компонентов и некоторые оптимизации, о которых я уже писал на wiki. Сборка разрабатывалась для себя, поэтому у некоторых она может работать странно. Если у вас что-то не работает - делаем на гихабе форк, исправляем ошибки и отправляем Pull Request.
Причина, по которой выбрана ветка 1.4 - неприлично большое потребление памяти в версии 1.5. Даже при наполнении демо товарами и включении кэширования оно превышает 32 Мб.
Скачать можно по ссылке https://github.com/prestalab/PrestaShop-1.4/archive/prestalab.zip.
В настоящее время github не включает в архивы субмодули, поэтому их придется скачать вручную: https://github.com/PrestaShop/PrestaShop-backward_compatibility/archive/master.zip и распаковать в каждый модуль, в котором находится папка backward_compatibility.
Или архив целиком https://disk.yandex.ru/public/?hash=IhQHcoDxM/iL/C3mvqE0Wa1arLSNRXLUzKHY23hTqHc%3D
Архив весит довольно много из-за дополнительных модулей, также это может вызвать ошибку нехватки памяти на вкладке "Модули". Перед загрузкой на сервер вы можете их удалить.
Изменения по сравнению со стандартной версией
- Добавлен русский перевод инсталлятора и самого движка. Кое-где проглядывает машинный перевод, поэтому буду рад любым дополнениям.
- Перевод базы данных. Переведено почти все кроме демо-товаров. Теперь нет необходимости в установке локализатора.
- Добавлены регионы города и почтовые индексы России. Использована баз почты России, так что не удивляйтесь наличию в списке Берлина.
- Добавлена транслитерация ЧПУ.
- Решена проблема с дубликатами Cookies (вызывала ошибку 500 на nginx).
- Обновлен TinyMCE до версии 3.5.8 и FancyBox до последней версии.
- Добавлена возможность использования Jquery c CDN Google или Yandex (вкладка Настрока>Производительность).
- Стандартная вкладка бэкапа заменена на Sypex dumper.
- Добавлена возможность использования минификатора инлайн скриптов (не работает в стандартном шаблоне) и html кода в качестве префильтра (вкладка Настроки>Производительность).
- Добавлена возможность кэширования с помощью модуля php APC.
- Добавлен html редактор описаний категорий.
- Добавлен морфологический русский поиск, поиск по части слова (раньше был только по началу слова) и список русских стоп слов.
- Добавлен инструмент профайлинга из версии 1.5.
- Добавлено кэширования smarty в стандартные модули, контролеры карты сайта, CMS, товаров, лидеров продаж и других часто используемых страниц.
- Добавлена система кэширования для нестандартных модулей (вкладка Настройка>Кэш). Используется кэш Файловой системы, Memcached или APC (если включены). В качестве ключа используется язык и валюта. Сброс всех видов кэшей происходит при нажатии кнопки Сохранить внизу на этой вкладке.
- Обновлен SwiftMailer до последней версии (возможно решит проблему с отправкой писем).
Установка и настройка
- Установка производится из папки install-dev (после установки удалите).
- Админка в папке admin-dev (переименуйте ее).
- По умолчанию всякая оптимизация отключена и включен профайлер и отображение ошибок. Не включайте оптимизацию до полной настройки и наполнения товарами магазина и полного тестирования.
- Для перехода в рабочий режим на вкладке Настрока>Производительность включите минификацию html в качестве префильтра. Включение минификации javascript в качестве префильтра может не работать на вашем шаблоне, а как постфильтр он дает незначительный выигрыш в размере при увеличении нагрузки на сервер, так что протестируйте перед включением.
- Отключите перекомпиляцию шаблонов и включите кэширование Smarty. Замерьте производительность фронт-офиса профайлером при второй загрузке страницы (при первой происходит запись в кэш).
- Включите кэширование, и также измерьте производительность фронт-офиса при второй загрузке страницы. Кэширование производится в основном для запросов в базу данных. База данных может использовать собственное кэширование, так что производительность не обязательно вырастет.
- Отключите отображение ошибок и профайлер в файле config/config.inc.php
@ini_set('display_errors', 'off');
define('_PS_DEBUG_SQL_', false);
define('_PS_DEBUG_PROFILING_', false);
Страница/Параметр | Главная | Категория | Товар | |||
---|---|---|---|---|---|---|
До | После | До | После | До | После | |
Время загрузки | 268 | 168 | 276 | 165 | 344 | 170 |
Потребление памяти | 8.68 | 7.1 | 10.2 | 7.38 | 11.52 | 7.89 |
Количество запросов к БД | 107 | 5 | 171 | 5 | 127 | 7 |
Что планируется
- Добавление мультизагрузки картинок к товару.
- Доработка стандарной системы CMS (как prestapress).