Xameleon Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 Приветствую! Начал долго загружаться сайт, нужно исправить + стабилизировать и ускорить загрузку сайта для компьютеров и мобильных. Подстроить под гугл. Надіслати Поділитися на інших сайтах More sharing options...
snastik Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 Извините за излишнюю саморекламу, но вам ко мне. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 10 жовтня 2017 Автор Share Опубліковано: 10 жовтня 2017 3 минуты назад, snastik сказал: Извините за излишнюю саморекламу, но вам ко мне. Зашел, глянул один из магазинов после оптимизации магазин https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fvse-footbolki.ru%2F&tab=desktop выдает не очень хорошие результаты. для мобильных 48% для компьютеров 65% Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 4 минуты назад, Xameleon сказал: Зашел, глянул один из магазинов после оптимизации магазин https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fvse-footbolki.ru%2F&tab=desktop выдает не очень хорошие результаты. для мобильных 48% для компьютеров 65% Вы меня простите, но там в магазине миллион двести тысяч товаров, и там не стоял вопрос повышения попугаев PageSpeed, а стоял вопрос запуска проекта с запредельным количеством товаров. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 10 жовтня 2017 Автор Share Опубліковано: 10 жовтня 2017 1 минуту назад, snastik сказал: Вы меня простите, но там в магазине миллион двести товаров, и там не стоял вопрос повышения попугаев PageSpeed, а стоял вопрос запуска проекта с запредельным количеством товаров. https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fableflight.ru%2F&tab=mobile 7000 товаров моб 45% комп 51% Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 10 жовтня 2017 Автор Share Опубліковано: 10 жовтня 2017 Какой смысл ускорения за 10к? гугл очень не любит когда по его тестам сайт тугой и на выдачу играет роль. Может яндексу все равно, но не гуглу. Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 6 минут назад, Xameleon сказал: Какой смысл ускорения за 10к? гугл очень не любит когда по его тестам сайт тугой и на выдачу играет роль. Может яндексу все равно, но не гуглу. Я вам расскажу. На выдачу играет роль - сугубо TTFB. Хотите верьте хотите нет, а больше чем я, тут весь вместе взятый форум тупых магазинов не видел. А тем более не наблюдал их в динамике. Все остальное попугаи. Даже 50 000 товаров на голом движке ложаться и отжимаются секунд по 10. Еще раз внимательно 1.2 м товаров. Вы знаете много бесплатных движков, которые переваривают миллион товаров? Для тех кто болен PageSpeedом головного мозга можно сделать вот так https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fchoco-tools.ru%2F или так https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=polysintez.ru&tab=desktop А вы продолжайте верить в волшебство зеленого попугая PageSpeed 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 2 часа назад, Xameleon сказал: https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fableflight.ru%2F&tab=mobile 7000 товаров моб 45% комп 51% Не Page Speed попугаями измеряется скорость Они не на что не влияют, это уже баян Скорость измеряется в инспекторе кода браузера TTFB@snastik немного резко но в точку высказался. Поймите уже, вот просто читаешь заказчиков и диву даешься, откуда они "берут", что скорость это PS попугаи... Кто вам такую чушь "выдает" 1 Надіслати Поділитися на інших сайтах More sharing options... Eldaeron Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 У @snastik все 3 сайта что я смотрел показали очень хороший TTFB, поэтому и людям приятно смотреть сайт, и возращаются, а не смотреть белую страницу со PageSpeed в 90/100 или выше. Оптимизация фильтров там также показывает скорость, действительно "молненосную". https://devaka.ru/articles/pagespeed-insights Вроде хорошо написали, что PageSpeed вам как инструмент покажет на ваши слабый точки, TTFB, gzip, кучу Жирных изображений которые можно сжать, Но основной целью должно быть улучшение скорости сайта, а не показателя PageSpeed. Не стоит сидеть и читать в интернете статьи типа "Как получить 100/100 в Google Page Speed Test Tool" ... зря потратите время. 2 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 @Xameleon вы из секты зеленых попугаев? от 300$ и вы будете зелеными, но + затраты на смену хостинга, или тарифа, и до.. первого модуля. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 13 минут назад, Xameleon сказал: Я с этим хостингом работаю а вдруг это хостинг не предоставит нужных библиотек А вдруг скажет менять тариф А вдруг.. Но ведь вам так нужны зеленые попугаи!!!! Как-то читал забугорную статью про оптимизацию для ГС, причем из серьезных источников. Так там.. Не, вы вдумайтесь!!! Кто-то пишет статью, оформляет ее как есть, публикует графики, картинки и... отправляет ее на проверку спидометру. Тот говорит ЁЁЁ так у тебя ж картинки хреновые, забери у меня, я для тебя их сжал. И вот редактор их забирает, опять вставляет. И.. О!!! Чудо!!! Зеленые попугаи прилетели. Все, о статье можно забыть! Она уже не редактируется, картинок ни добавить, ни исправить. Или наша песня хороша, начинай с начала. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 9 минут назад, Guava сказал: подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 3 минуты назад, chukcha сказал: Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. спасибо Надіслати Поділитися на інших сайтах More sharing options... sitecreator Опубліковано: 11 жовтня 2017 Share Опубліковано: 11 жовтня 2017 @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Форум Послуги Інші послуги [Решено] [Решено] Исправление и ускорение сайта OpenCartForum Форум Модулі Шаблони Безкоштовні шаблониПлатні шаблони Блоги Новини ocStore Офіційний сайтДемо ocStore 3.0.3.2Демо ocStore 2.3.0.2.4Завантажити ocStoreДокументаціяІсторія версій ocStore Гість Українська Русский English Уже зареєстровані? Ввійти Реєстрація × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Xameleon Опубліковано: 10 жовтня 2017 Автор Share Опубліковано: 10 жовтня 2017 3 минуты назад, snastik сказал: Извините за излишнюю саморекламу, но вам ко мне. Зашел, глянул один из магазинов после оптимизации магазин https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fvse-footbolki.ru%2F&tab=desktop выдает не очень хорошие результаты. для мобильных 48% для компьютеров 65% Надіслати Поділитися на інших сайтах More sharing options...
snastik Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 4 минуты назад, Xameleon сказал: Зашел, глянул один из магазинов после оптимизации магазин https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fvse-footbolki.ru%2F&tab=desktop выдает не очень хорошие результаты. для мобильных 48% для компьютеров 65% Вы меня простите, но там в магазине миллион двести тысяч товаров, и там не стоял вопрос повышения попугаев PageSpeed, а стоял вопрос запуска проекта с запредельным количеством товаров. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 10 жовтня 2017 Автор Share Опубліковано: 10 жовтня 2017 1 минуту назад, snastik сказал: Вы меня простите, но там в магазине миллион двести товаров, и там не стоял вопрос повышения попугаев PageSpeed, а стоял вопрос запуска проекта с запредельным количеством товаров. https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fableflight.ru%2F&tab=mobile 7000 товаров моб 45% комп 51% Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 10 жовтня 2017 Автор Share Опубліковано: 10 жовтня 2017 Какой смысл ускорения за 10к? гугл очень не любит когда по его тестам сайт тугой и на выдачу играет роль. Может яндексу все равно, но не гуглу. Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 6 минут назад, Xameleon сказал: Какой смысл ускорения за 10к? гугл очень не любит когда по его тестам сайт тугой и на выдачу играет роль. Может яндексу все равно, но не гуглу. Я вам расскажу. На выдачу играет роль - сугубо TTFB. Хотите верьте хотите нет, а больше чем я, тут весь вместе взятый форум тупых магазинов не видел. А тем более не наблюдал их в динамике. Все остальное попугаи. Даже 50 000 товаров на голом движке ложаться и отжимаются секунд по 10. Еще раз внимательно 1.2 м товаров. Вы знаете много бесплатных движков, которые переваривают миллион товаров? Для тех кто болен PageSpeedом головного мозга можно сделать вот так https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fchoco-tools.ru%2F или так https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=polysintez.ru&tab=desktop А вы продолжайте верить в волшебство зеленого попугая PageSpeed 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 2 часа назад, Xameleon сказал: https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fableflight.ru%2F&tab=mobile 7000 товаров моб 45% комп 51% Не Page Speed попугаями измеряется скорость Они не на что не влияют, это уже баян Скорость измеряется в инспекторе кода браузера TTFB@snastik немного резко но в точку высказался. Поймите уже, вот просто читаешь заказчиков и диву даешься, откуда они "берут", что скорость это PS попугаи... Кто вам такую чушь "выдает" 1 Надіслати Поділитися на інших сайтах More sharing options... Eldaeron Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 У @snastik все 3 сайта что я смотрел показали очень хороший TTFB, поэтому и людям приятно смотреть сайт, и возращаются, а не смотреть белую страницу со PageSpeed в 90/100 или выше. Оптимизация фильтров там также показывает скорость, действительно "молненосную". https://devaka.ru/articles/pagespeed-insights Вроде хорошо написали, что PageSpeed вам как инструмент покажет на ваши слабый точки, TTFB, gzip, кучу Жирных изображений которые можно сжать, Но основной целью должно быть улучшение скорости сайта, а не показателя PageSpeed. Не стоит сидеть и читать в интернете статьи типа "Как получить 100/100 в Google Page Speed Test Tool" ... зря потратите время. 2 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 @Xameleon вы из секты зеленых попугаев? от 300$ и вы будете зелеными, но + затраты на смену хостинга, или тарифа, и до.. первого модуля. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 13 минут назад, Xameleon сказал: Я с этим хостингом работаю а вдруг это хостинг не предоставит нужных библиотек А вдруг скажет менять тариф А вдруг.. Но ведь вам так нужны зеленые попугаи!!!! Как-то читал забугорную статью про оптимизацию для ГС, причем из серьезных источников. Так там.. Не, вы вдумайтесь!!! Кто-то пишет статью, оформляет ее как есть, публикует графики, картинки и... отправляет ее на проверку спидометру. Тот говорит ЁЁЁ так у тебя ж картинки хреновые, забери у меня, я для тебя их сжал. И вот редактор их забирает, опять вставляет. И.. О!!! Чудо!!! Зеленые попугаи прилетели. Все, о статье можно забыть! Она уже не редактируется, картинок ни добавить, ни исправить. Или наша песня хороша, начинай с начала. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 9 минут назад, Guava сказал: подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 3 минуты назад, chukcha сказал: Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. спасибо Надіслати Поділитися на інших сайтах More sharing options... sitecreator Опубліковано: 11 жовтня 2017 Share Опубліковано: 11 жовтня 2017 @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Форум Послуги Інші послуги [Решено] [Решено] Исправление и ускорение сайта OpenCartForum Форум Модулі Шаблони Безкоштовні шаблониПлатні шаблони Блоги Новини ocStore Офіційний сайтДемо ocStore 3.0.3.2Демо ocStore 2.3.0.2.4Завантажити ocStoreДокументаціяІсторія версій ocStore Гість Українська Русский English Уже зареєстровані? Ввійти Реєстрація × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Xameleon Опубліковано: 10 жовтня 2017 Автор Share Опубліковано: 10 жовтня 2017 1 минуту назад, snastik сказал: Вы меня простите, но там в магазине миллион двести товаров, и там не стоял вопрос повышения попугаев PageSpeed, а стоял вопрос запуска проекта с запредельным количеством товаров. https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fableflight.ru%2F&tab=mobile 7000 товаров моб 45% комп 51% Надіслати Поділитися на інших сайтах More sharing options...
Xameleon Опубліковано: 10 жовтня 2017 Автор Share Опубліковано: 10 жовтня 2017 Какой смысл ускорения за 10к? гугл очень не любит когда по его тестам сайт тугой и на выдачу играет роль. Может яндексу все равно, но не гуглу. Надіслати Поділитися на інших сайтах More sharing options...
snastik Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 6 минут назад, Xameleon сказал: Какой смысл ускорения за 10к? гугл очень не любит когда по его тестам сайт тугой и на выдачу играет роль. Может яндексу все равно, но не гуглу. Я вам расскажу. На выдачу играет роль - сугубо TTFB. Хотите верьте хотите нет, а больше чем я, тут весь вместе взятый форум тупых магазинов не видел. А тем более не наблюдал их в динамике. Все остальное попугаи. Даже 50 000 товаров на голом движке ложаться и отжимаются секунд по 10. Еще раз внимательно 1.2 м товаров. Вы знаете много бесплатных движков, которые переваривают миллион товаров? Для тех кто болен PageSpeedом головного мозга можно сделать вот так https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fchoco-tools.ru%2F или так https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=polysintez.ru&tab=desktop А вы продолжайте верить в волшебство зеленого попугая PageSpeed 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 2 часа назад, Xameleon сказал: https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fableflight.ru%2F&tab=mobile 7000 товаров моб 45% комп 51% Не Page Speed попугаями измеряется скорость Они не на что не влияют, это уже баян Скорость измеряется в инспекторе кода браузера TTFB@snastik немного резко но в точку высказался. Поймите уже, вот просто читаешь заказчиков и диву даешься, откуда они "берут", что скорость это PS попугаи... Кто вам такую чушь "выдает" 1 Надіслати Поділитися на інших сайтах More sharing options... Eldaeron Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 У @snastik все 3 сайта что я смотрел показали очень хороший TTFB, поэтому и людям приятно смотреть сайт, и возращаются, а не смотреть белую страницу со PageSpeed в 90/100 или выше. Оптимизация фильтров там также показывает скорость, действительно "молненосную". https://devaka.ru/articles/pagespeed-insights Вроде хорошо написали, что PageSpeed вам как инструмент покажет на ваши слабый точки, TTFB, gzip, кучу Жирных изображений которые можно сжать, Но основной целью должно быть улучшение скорости сайта, а не показателя PageSpeed. Не стоит сидеть и читать в интернете статьи типа "Как получить 100/100 в Google Page Speed Test Tool" ... зря потратите время. 2 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 @Xameleon вы из секты зеленых попугаев? от 300$ и вы будете зелеными, но + затраты на смену хостинга, или тарифа, и до.. первого модуля. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 13 минут назад, Xameleon сказал: Я с этим хостингом работаю а вдруг это хостинг не предоставит нужных библиотек А вдруг скажет менять тариф А вдруг.. Но ведь вам так нужны зеленые попугаи!!!! Как-то читал забугорную статью про оптимизацию для ГС, причем из серьезных источников. Так там.. Не, вы вдумайтесь!!! Кто-то пишет статью, оформляет ее как есть, публикует графики, картинки и... отправляет ее на проверку спидометру. Тот говорит ЁЁЁ так у тебя ж картинки хреновые, забери у меня, я для тебя их сжал. И вот редактор их забирает, опять вставляет. И.. О!!! Чудо!!! Зеленые попугаи прилетели. Все, о статье можно забыть! Она уже не редактируется, картинок ни добавить, ни исправить. Или наша песня хороша, начинай с начала. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 9 минут назад, Guava сказал: подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 3 минуты назад, chukcha сказал: Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. спасибо Надіслати Поділитися на інших сайтах More sharing options... sitecreator Опубліковано: 11 жовтня 2017 Share Опубліковано: 11 жовтня 2017 @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Форум Послуги Інші послуги [Решено] [Решено] Исправление и ускорение сайта OpenCartForum Форум Модулі Шаблони Безкоштовні шаблониПлатні шаблони Блоги Новини ocStore Офіційний сайтДемо ocStore 3.0.3.2Демо ocStore 2.3.0.2.4Завантажити ocStoreДокументаціяІсторія версій ocStore Гість Українська Русский English Уже зареєстровані? Ввійти Реєстрація × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
markimax Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 2 часа назад, Xameleon сказал: https://developers.google.com/speed/pagespeed/insights/?hl=ru&url=https%3A%2F%2Fableflight.ru%2F&tab=mobile 7000 товаров моб 45% комп 51% Не Page Speed попугаями измеряется скорость Они не на что не влияют, это уже баян Скорость измеряется в инспекторе кода браузера TTFB@snastik немного резко но в точку высказался. Поймите уже, вот просто читаешь заказчиков и диву даешься, откуда они "берут", что скорость это PS попугаи... Кто вам такую чушь "выдает" 1 Надіслати Поділитися на інших сайтах More sharing options... Eldaeron Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 У @snastik все 3 сайта что я смотрел показали очень хороший TTFB, поэтому и людям приятно смотреть сайт, и возращаются, а не смотреть белую страницу со PageSpeed в 90/100 или выше. Оптимизация фильтров там также показывает скорость, действительно "молненосную". https://devaka.ru/articles/pagespeed-insights Вроде хорошо написали, что PageSpeed вам как инструмент покажет на ваши слабый точки, TTFB, gzip, кучу Жирных изображений которые можно сжать, Но основной целью должно быть улучшение скорости сайта, а не показателя PageSpeed. Не стоит сидеть и читать в интернете статьи типа "Как получить 100/100 в Google Page Speed Test Tool" ... зря потратите время. 2 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 @Xameleon вы из секты зеленых попугаев? от 300$ и вы будете зелеными, но + затраты на смену хостинга, или тарифа, и до.. первого модуля. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 13 минут назад, Xameleon сказал: Я с этим хостингом работаю а вдруг это хостинг не предоставит нужных библиотек А вдруг скажет менять тариф А вдруг.. Но ведь вам так нужны зеленые попугаи!!!! Как-то читал забугорную статью про оптимизацию для ГС, причем из серьезных источников. Так там.. Не, вы вдумайтесь!!! Кто-то пишет статью, оформляет ее как есть, публикует графики, картинки и... отправляет ее на проверку спидометру. Тот говорит ЁЁЁ так у тебя ж картинки хреновые, забери у меня, я для тебя их сжал. И вот редактор их забирает, опять вставляет. И.. О!!! Чудо!!! Зеленые попугаи прилетели. Все, о статье можно забыть! Она уже не редактируется, картинок ни добавить, ни исправить. Или наша песня хороша, начинай с начала. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 9 минут назад, Guava сказал: подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 3 минуты назад, chukcha сказал: Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. спасибо Надіслати Поділитися на інших сайтах More sharing options... sitecreator Опубліковано: 11 жовтня 2017 Share Опубліковано: 11 жовтня 2017 @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Форум Послуги Інші послуги [Решено] [Решено] Исправление и ускорение сайта OpenCartForum Форум Модулі Шаблони Безкоштовні шаблониПлатні шаблони Блоги Новини ocStore Офіційний сайтДемо ocStore 3.0.3.2Демо ocStore 2.3.0.2.4Завантажити ocStoreДокументаціяІсторія версій ocStore Гість Українська Русский English Уже зареєстровані? Ввійти Реєстрація × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Eldaeron Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 У @snastik все 3 сайта что я смотрел показали очень хороший TTFB, поэтому и людям приятно смотреть сайт, и возращаются, а не смотреть белую страницу со PageSpeed в 90/100 или выше. Оптимизация фильтров там также показывает скорость, действительно "молненосную". https://devaka.ru/articles/pagespeed-insights Вроде хорошо написали, что PageSpeed вам как инструмент покажет на ваши слабый точки, TTFB, gzip, кучу Жирных изображений которые можно сжать, Но основной целью должно быть улучшение скорости сайта, а не показателя PageSpeed. Не стоит сидеть и читать в интернете статьи типа "Как получить 100/100 в Google Page Speed Test Tool" ... зря потратите время. 2 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 @Xameleon вы из секты зеленых попугаев? от 300$ и вы будете зелеными, но + затраты на смену хостинга, или тарифа, и до.. первого модуля. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 13 минут назад, Xameleon сказал: Я с этим хостингом работаю а вдруг это хостинг не предоставит нужных библиотек А вдруг скажет менять тариф А вдруг.. Но ведь вам так нужны зеленые попугаи!!!! Как-то читал забугорную статью про оптимизацию для ГС, причем из серьезных источников. Так там.. Не, вы вдумайтесь!!! Кто-то пишет статью, оформляет ее как есть, публикует графики, картинки и... отправляет ее на проверку спидометру. Тот говорит ЁЁЁ так у тебя ж картинки хреновые, забери у меня, я для тебя их сжал. И вот редактор их забирает, опять вставляет. И.. О!!! Чудо!!! Зеленые попугаи прилетели. Все, о статье можно забыть! Она уже не редактируется, картинок ни добавить, ни исправить. Или наша песня хороша, начинай с начала. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 9 минут назад, Guava сказал: подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 3 минуты назад, chukcha сказал: Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. спасибо Надіслати Поділитися на інших сайтах More sharing options... sitecreator Опубліковано: 11 жовтня 2017 Share Опубліковано: 11 жовтня 2017 @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Форум Послуги Інші послуги [Решено] [Решено] Исправление и ускорение сайта OpenCartForum Форум Модулі Шаблони Безкоштовні шаблониПлатні шаблони Блоги Новини ocStore Офіційний сайтДемо ocStore 3.0.3.2Демо ocStore 2.3.0.2.4Завантажити ocStoreДокументаціяІсторія версій ocStore Гість Українська Русский English Уже зареєстровані? Ввійти Реєстрація × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 @Xameleon вы из секты зеленых попугаев? от 300$ и вы будете зелеными, но + затраты на смену хостинга, или тарифа, и до.. первого модуля. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 13 минут назад, Xameleon сказал: Я с этим хостингом работаю а вдруг это хостинг не предоставит нужных библиотек А вдруг скажет менять тариф А вдруг.. Но ведь вам так нужны зеленые попугаи!!!! Как-то читал забугорную статью про оптимизацию для ГС, причем из серьезных источников. Так там.. Не, вы вдумайтесь!!! Кто-то пишет статью, оформляет ее как есть, публикует графики, картинки и... отправляет ее на проверку спидометру. Тот говорит ЁЁЁ так у тебя ж картинки хреновые, забери у меня, я для тебя их сжал. И вот редактор их забирает, опять вставляет. И.. О!!! Чудо!!! Зеленые попугаи прилетели. Все, о статье можно забыть! Она уже не редактируется, картинок ни добавить, ни исправить. Или наша песня хороша, начинай с начала. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 9 минут назад, Guava сказал: подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 3 минуты назад, chukcha сказал: Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. спасибо Надіслати Поділитися на інших сайтах More sharing options... sitecreator Опубліковано: 11 жовтня 2017 Share Опубліковано: 11 жовтня 2017 @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Форум Послуги Інші послуги [Решено] [Решено] Исправление и ускорение сайта OpenCartForum Форум Модулі Шаблони Безкоштовні шаблониПлатні шаблони Блоги Новини ocStore Офіційний сайтДемо ocStore 3.0.3.2Демо ocStore 2.3.0.2.4Завантажити ocStoreДокументаціяІсторія версій ocStore Гість Українська Русский English Уже зареєстровані? Ввійти Реєстрація × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Надіслати Поділитися на інших сайтах More sharing options...
chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 13 минут назад, Xameleon сказал: Я с этим хостингом работаю а вдруг это хостинг не предоставит нужных библиотек А вдруг скажет менять тариф А вдруг.. Но ведь вам так нужны зеленые попугаи!!!! Как-то читал забугорную статью про оптимизацию для ГС, причем из серьезных источников. Так там.. Не, вы вдумайтесь!!! Кто-то пишет статью, оформляет ее как есть, публикует графики, картинки и... отправляет ее на проверку спидометру. Тот говорит ЁЁЁ так у тебя ж картинки хреновые, забери у меня, я для тебя их сжал. И вот редактор их забирает, опять вставляет. И.. О!!! Чудо!!! Зеленые попугаи прилетели. Все, о статье можно забыть! Она уже не редактируется, картинок ни добавить, ни исправить. Или наша песня хороша, начинай с начала. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 9 минут назад, Guava сказал: подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 3 минуты назад, chukcha сказал: Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. спасибо Надіслати Поділитися на інших сайтах More sharing options... sitecreator Опубліковано: 11 жовтня 2017 Share Опубліковано: 11 жовтня 2017 @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Форум Послуги Інші послуги [Решено] [Решено] Исправление и ускорение сайта OpenCartForum Форум Модулі Шаблони Безкоштовні шаблониПлатні шаблони Блоги Новини ocStore Офіційний сайтДемо ocStore 3.0.3.2Демо ocStore 2.3.0.2.4Завантажити ocStoreДокументаціяІсторія версій ocStore Гість Українська Русский English Уже зареєстровані? Ввійти Реєстрація × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 9 минут назад, Guava сказал: подобрал пару топовых сайтов, ради эксперимента. Реально некоторые в красной зоне. Народ, а как лучше поступить? Поставить все все модули которые нужны и потом искать человека, чтобы он все наладил как нужно? То есть приступать к такой работе, когда точно знаешь, что не будешь ставить новых модулей. Правильно? Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. Надіслати Поділитися на інших сайтах More sharing options... Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 3 минуты назад, chukcha сказал: Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. спасибо Надіслати Поділитися на інших сайтах More sharing options... sitecreator Опубліковано: 11 жовтня 2017 Share Опубліковано: 11 жовтня 2017 @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Форум Послуги Інші послуги [Решено] [Решено] Исправление и ускорение сайта
Guava Опубліковано: 10 жовтня 2017 Share Опубліковано: 10 жовтня 2017 3 минуты назад, chukcha сказал: Когда вы уже исчерпали возможности внутренней и внешней оптимизации, когда у вас продажи от 20ти в день, вот тогда и гоняйтесь. Здесь в основном говорят о первом байте TTFB, что это есть часть оптимизации, а не всякого рода сжатия картинок и скриптов. спасибо Надіслати Поділитися на інших сайтах More sharing options...
sitecreator Опубліковано: 11 жовтня 2017 Share Опубліковано: 11 жовтня 2017 @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. 1 Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options... snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Форум Послуги Інші послуги [Решено] [Решено] Исправление и ускорение сайта
Xameleon Опубліковано: 12 жовтня 2017 Автор Share Опубліковано: 12 жовтня 2017 21 час назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Спасибо! Надіслати Поділитися на інших сайтах More sharing options...
snastik Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 22 часа назад, sitecreator сказал: @Xameleon , попугаи попугаями, но можно все же одновременно получить пользу и попугаями насладиться уж если хочется. Например, сжимаете все изображения без потерь качества. Экономите на этом трафик, следовательно скорость загрузки увеличивается. И одновременно вас гугл похвалит и попугаев (баллов) накидает пригоршню. Т. е. всем хорошо и никакого обмана, т. е. результат реальный, а не псевдо. Вопрос с изображениями будет у вас в плане оптимизации навсегда закрыт. Но это будет хорошим дополнением к несильно долгой генерации страницы. Т. е. с этим должно быть все более-менее в порядке первым делом. Совершенно избыточная приблуда, которая решается тремя строчками кода, при наличии VPS. Или на шареде на AdminVps. Ставим optipng и jpegoptim (про mozjpeg - не надо сразу прошу сказок, гугл про эту чушь умалчивает). На примере redhat/centos yum install optipng yum install jpegoptim либо debian/ubuntu apt-get install optipng apt-get install jpegoptim и потом меняем catalog/model/tool/image.php на это! <?php class ModelToolImage extends Model { /** * * @param filename string * @param width * @param height * @param type char [default, w, h] * default = scale with white space, * w = fill according to width, * h = fill according to height * */ public function resize($filename, $width, $height, $type = "") { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; // $new_image = 'cache/' . utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension; $currentLocal = setlocale(LC_ALL, 0); setlocale(LC_ALL, 'ru_RU.UTF-8'); $pattern = [ '/\/\/+/', '/\s/', ]; $replace = [ '/', '-', ]; $new_image = 'cache/' . trim(escapeshellarg(preg_replace($pattern, $replace, urldecode(utf8_substr($filename, 0, utf8_strrpos($filename, '.')) . '-' . $width . 'x' . $height . $type .'.' . $extension))), '\''); if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } list($width_orig, $height_orig) = getimagesize(DIR_IMAGE . $old_image); if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height, $type); $image->save(DIR_IMAGE . $new_image); } else { copy(DIR_IMAGE . $old_image, DIR_IMAGE . $new_image); } $img_log = new Log('img_log.log'); $optimized_image_path = escapeshellarg(DIR_IMAGE . $new_image); if ($extension == 'jpeg' || $extension == 'jpg') { $img_log->write(shell_exec("jpegoptim --max=80 --strip-all --all-progressive " . $optimized_image_path)); } elseif ($extension == 'png') { $img_log->write(shell_exec("optipng -strip all -o7 ". $optimized_image_path ." 2>&1")); } } return $this->getImageUrl($new_image); } protected function getImageUrl($new_image) { $parts = explode('/', $new_image); $new_url = implode('/', array_map('rawurlencode', $parts)); if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_url; } else { return $this->config->get('config_url') . 'image/' . $new_url; } } } Вобщем две консольных команды и три строчки кода, не тянут на 1000 рублей никак! Надіслати Поділитися на інших сайтах More sharing options... Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
Tom Опубліковано: 12 жовтня 2017 Share Опубліковано: 12 жовтня 2017 Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Надіслати Поділитися на інших сайтах More sharing options... Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options... 9 р Tom locked this topic Ця тема закрита для публікації повідомлень. Share More sharing options... Передплатники 0
Xameleon Опубліковано: 13 жовтня 2017 Автор Share Опубліковано: 13 жовтня 2017 8 часов назад, Tom сказал: Почистил топик.Просьба для подобных дебатов использовать личные сообщения. Для @Xameleon . Более точно формулируйте задачу. И размещайте в нужных ветках.Это не раздел с предложениями для платных доработок. Принято! Исполнитель найден, работа выполнена. Тему можно закрывать если это возможно в данном разделе. Надіслати Поділитися на інших сайтах More sharing options...
Recommended Posts