Информация Ускорение и оптимизация престашоп

Я ма модуль посоветуешь полировать веб-страницы, изображения, шаблон, и т.д., с результатами GTmetrix не очень хорошо

Что такое оптимальное сочетание настроек кэша, чтобы иметь лучшую производительность

Hola! Yo entiendo que usted no es de Rusia, por lo que la respuesta a las imágenes para que sea más claro. Con suerte, su traductor traducirá mi puesto correctamente:)
En el panel de administración, en las "Opciones avanzadas -> Rendimiento" configuración de la ficha, como se muestra en las siguientes capturas de pantalla:
Код:
 https://pp.vk.me/c626824/v626824177/391ae/20QsfXMD6n4.jpg
https://pp.vk.me/c626824/v626824177/391b8/ch8DxvIp-vI.jpg
https://pp.vk.me/c626824/v626824177/391c2/s3gelz6_ruE.jpg
En la última imagen, si su alojamiento está incluido memcached (verificar esta posibilidad con su ISP), puede seleccionar esta opción.
También instalar ningún plug-in de memoria caché (por ejemplo, Administrador de caché) y convertirlo todos los elementos para el almacenamiento en caché.
Si su alojamiento se establece módulo mod_pagespeed - configurarlo, ya que fue descrito unas pocas páginas antes (se pueden encontrar estos mensajes a través de la búsqueda). Si usted tiene su propio servidor, o VPS - consultar a los profesionales cualificados para instalar y configurarlo (esta es una tarea no es para principiantes)
.

Спасибо большое за ответ Karlasan действительно я не русский, я пишу из Испании, я установил мой раздел производительности памяти, как показано на прилагаемых изображениях, я надеюсь, что я лучше duncione
Еще раз спасибо, я надеюсь, что мой русский Google может понять

В первом варианте выбрать "компилировать шаблоны, когда файлы были изменены"
Веб-сайт не появился, я должен был оставить его, как это было ранее

Я использую (склад) шаблон
 
Последнее редактирование модератором:
С гуглошрифтами вопрос решил так (нагуглил решение в инете) :
1) скачал гугловские css, из них удалил определения ненужных шрифтов (всякие там greek и т.п.), скачал шрифты в формате woff2.
2) каждый шрифт преобразовал в base64 и внес прямо в css, выглядеть стало примерно так:
Код:
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'), url(data:application/font-woff2;charset=utf-8;base64,тут_код_шрифта_в_base64) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
и так для каждого объявления шрифтов. Получилась css размером килобайт 200, которую залил на сайт
3) подгружаю css таким способом:
Код:
<script>
(function(){
    function addFont() {
        var style = document.createElement('style');
        style.rel = 'stylesheet';
        document.head.appendChild(style);
        style.textContent = localStorage.sourceSansPro;
    }

    try {
        if (localStorage.sourceSansPro) {
            // шрифт сохранен локально - загружаем без запроса
            addFont();
        } else {
            // шрифт не сохранен локально - загружаем
            var request = new XMLHttpRequest();
            request.open('GET', '/fonts_base64/fonts_base64.css', true);

            request.onload = function() {
                if (request.status >= 200 && request.status < 400) {
                    localStorage.sourceSansPro = request.responseText;
                    addFont();
                }
            }

            request.send();
        }
    } catch(ex) {
    }
}());
</script>
Скрипт вставлен в header.tpl шаблона. Он загружает css через аякс и сохраняет в local storage, далее она загружается уже локально. Выигрываем сразу в нескольких моментах - делается один запрос вместо нескольких, и при последующих посещениях сайта запрос на шрифты не делается вообще.
Насчет совместимости - автор статьи говорил о ~95%, за достоверность этой цифры я не ручаюсь. Не работает на старых ie и старых версиях андроида - css подгружается каждый раз, это вызывает мигание экрана в момент внедрения кода файла.
После применения данного метода пейджспид перестал ругаться на css-ки со шрифтами и их кеширование, что, соответственно, прибавило несколько баллов в тесте.
Насчет этого:
Здравствуйте, как можно решить проблему с оптимизацией, в PageSeed пишет Оптимизируйте работу CSS на следующих ресурсах: themes/default-bootstrap/cache/v_71_c2509bcbb995cc928641f101ca0dc713_all.css. если отключить Умное кеширование CSS тогда пишет global.css
Тут только чистить css от неиспользуемых правил. Гугл по запросу "css automatically delete unused rules" выдает несколько инструментов для этого. По заверениям их авторов, это может сократить размер css процентов на 30. Сам я до этого способа еще не добрался (пейджспид тоже ругается на большую css-ку), но у меня сейчас 97/100 - и так норм, в общем то. Сделаю, как буду свободен от остальных работ по сайту, о результатах отпишусь.
 
Что такое оптимальное сочетание настроек кэша, чтобы иметь лучшую производительность
Здравствуйте! Я так понимаю, вы не из России, поэтому отвечу в картинках, чтобы было понятнее. Надеюсь, ваш переводчик переведет моё сообщение без ошибок :)
В панели администрирования, на вкладке "Расширенные параметры -> Производительность" установите настройки, как показано на следующих скриншотах:
Код:
https://pp.vk.me/c626824/v626824177/391ae/20QsfXMD6n4.jpg
https://pp.vk.me/c626824/v626824177/391b8/ch8DxvIp-vI.jpg
https://pp.vk.me/c626824/v626824177/391c2/s3gelz6_ruE.jpg
На последнем изображении, если на вашем хостинге включен memcached (уточните эту возможность у своего провайдера), можно выбрать этот пункт.
Также установите любой плагин кеширования (например, Cache Manager) и включите в нем все пункты для кеширования.
Если на вашем хостинге установлен модуль mod_pagespeed - настройте его, как было рассказано несколькими страницами ранее (можете найти эти сообщения через поиск). Если у вас свой сервер или VPS - попросите квалифицированных специалистов установить и настроить его (это задача не для новичков).
 
В первом варианте выбрать "компилировать шаблоны, когда файлы были изменены"
Веб-сайт не появился, я должен был оставить его, как это было ранее
Если не появился, то скорее всего у Вас есть ошибка где то. С этой функцией обычно всегда все работает.
 
noobasse Спасибо, что я думаю, я помещу в режиме отладки, если mirare увидеть проблему и выставляя в этом форуме
 
Огромное спасибо! Супер.
Только, не могли бы Вы, поподробнее немного описать процесс.
что откуда скачали чем пережали, что убрали? что добавили? где? по какому принципу отлавливали ненужные шрифты? и тд

С гуглошрифтами вопрос решил так (нагуглил решение в инете) :
1) скачал гугловские css, из них удалил определения ненужных шрифтов (всякие там greek и т.п.), скачал шрифты в формате woff2.
2) каждый шрифт преобразовал в base64 и внес прямо в css, выглядеть стало примерно так:
Код:
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto'), local('Roboto-Regular'), url(data:application/font-woff2;charset=utf-8;base64,тут_код_шрифта_в_base64) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
и так для каждого объявления шрифтов. Получилась css размером килобайт 200, которую залил на сайт
3) подгружаю css таким способом:
Код:
<script>
(function(){
    function addFont() {
        var style = document.createElement('style');
        style.rel = 'stylesheet';
        document.head.appendChild(style);
        style.textContent = localStorage.sourceSansPro;
    }

    try {
        if (localStorage.sourceSansPro) {
            // шрифт сохранен локально - загружаем без запроса
            addFont();
        } else {
            // шрифт не сохранен локально - загружаем
            var request = new XMLHttpRequest();
            request.open('GET', '/fonts_base64/fonts_base64.css', true);

            request.onload = function() {
                if (request.status >= 200 && request.status < 400) {
                    localStorage.sourceSansPro = request.responseText;
                    addFont();
                }
            }

            request.send();
        }
    } catch(ex) {
    }
}());
</script>
Скрипт вставлен в header.tpl шаблона. Он загружает css через аякс и сохраняет в local storage, далее она загружается уже локально. Выигрываем сразу в нескольких моментах - делается один запрос вместо нескольких, и при последующих посещениях сайта запрос на шрифты не делается вообще.
 
Вот еще вариант.
У себя "локализировал" шрифты таким образом.
Идем сюда — Для просмотра ссылки Войди или Зарегистрируйся

1. находим свои шрифты
2. чекаем наборы которые нужны (cyrillic, latin и пр.)
3. чекаем стили (начертания) шрифтов: курсив, жирность и пр.
4. выбираем поддержку (или не поддержку) старых браузеров
5. копируем полученный CSS код туда куда вам надо (в случае с установленной темой Warehouse — заходим в настройки темы и вставляем на закладке "FONTS AND TYPO" в область "Font-face custom font include"

Это мой для примера
Код:
/* open-sans-regular - cyrillic-ext_latin-ext_cyrillic_latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Open Sans'), local('OpenSans'),
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-italic - cyrillic-ext_latin-ext_cyrillic_latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Italic'), local('OpenSans-Italic'),
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-700 - cyrillic-ext_latin-ext_cyrillic_latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Bold'), local('OpenSans-Bold'),
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-700italic - cyrillic-ext_latin-ext_cyrillic_latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700italic.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'),
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v13-cyrillic-ext_latin-ext_cyrillic_latin-700italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
6. скачиваем (любезно сгенерированный для нас) ZIP архив со шрифтами и распаковываем их (в случае с Warehouse — в modules/themeeditor/fonts)
7. убираем загрузку гугло-шрифтов из файла header.tpl

Если кто знает, какие есть подводные камни у такого способа, или есть предложения — welcome!
 
Последнее редактирование:
всё что не на вашем вебсервере - не удастся повлиять, только отключить
А вот и нет! :) Есть решение: Для просмотра ссылки Войди или Зарегистрируйся
Ты же, вроде, это даже лайкнул.

Или это не работает и я чего-то не знаю?
Вроде, тестил, работало всё.
 
А вот и нет! :) Есть решение: Для просмотра ссылки Войди или Зарегистрируйся
Ты же, вроде, это даже лайкнул.

Или это не работает и я чего-то не знаю?
Вроде, тестил, работало всё.

это всё перфекционизм - и он лечится )


не будете же по крону каждые 5 секунд качать файлы?

ранее делали эксперименты со скачиванием на свой сервер исходников внешних скриптов, но тут компромисс нужен - если ими не пользуетесь, особенно на старте бизнеса - то лучше отключить, так как эти скрипты в активной постоянной доработке "там у них", и контроль версий файлов туманен, поэтому скачанная вами версия может через день быть уже устаревшей и влиять на качество/корректность сбора статистики и т.д.

поэтому если ценить/считать затрачиваемое время на корректировки/перезаливки и на ценность/точность получаемой информации - то нужно выбирать - что важнее бизнесу
 
Назад
Сверху