Jump to content
Sign in to follow this  
ilerok

Платно удалить/отключить ресайзинг фотографий товаров в OpenCart 2.3

Recommended Posts

Ищу программиста который сможет платно удалить или отключить ресайзинг фотографий в OpenCart 2.3

 

Больше всего интересует отключение ресайзинга хотя бы для списка товаров и страницы товара. Если можно отключить глобально - будет еще круче)

 

Ссылку на фото нужно отдавать на сайт прямой, без /cache/ в пути на изображение.

CSS стили для адаптации не ресайзнутых фото посредством css уже готовы. Все блоки верстки под это тоже предусмотрены.

 

P.S. Пожалуйста не спрашивайте зачем мне это нужно и не пишите что это делать не стоит)) 

 

Пишите цену и сроки в личку. Смогу оплатить на яндекс дегьги, вебмани, приват24.

Edited by ilerok

Share this post


Link to post
Share on other sites

viber watsapp telegramm +7-908-551-45-00 пишите, всё сделаю

Edited by php

Share this post


Link to post
Share on other sites
Только что, php сказал:

viber watsapp telegramm =^_^= пишите, всё сделаю

скиньте в лс пожалуйста ваши контакты и цену

Share this post


Link to post
Share on other sites

8-908-551-45-00

Edited by php

Share this post


Link to post
Share on other sites
29 минут назад, ilerok сказал:

Больше всего интересует отключение ресайзинга хотя бы для списка товаров и страницы товара.

 

catalog\controller\product\category.php

 

найти

$image = $this->model_tool_image->resize($result['image'], $this->config->get($this->config->get('config_theme') . '_image_product_width'), $this->config->get($this->config->get('config_theme') . '_image_product_height'));

заменить на 

$image = 'image/' . $result['image'];

по аналогии с товаром.....

 

  • +1 2

Share this post


Link to post
Share on other sites
18 минут назад, Tom сказал:

 

catalog\controller\product\category.php

 

найти

$image = $this->model_tool_image->resize($result['image'], $this->config->get($this->config->get('config_theme') . '_image_product_width'), $this->config->get($this->config->get('config_theme') . '_image_product_height'));

заменить на 

$image = 'image/' . $result['image'];

по аналогии с товаром.....

 

 

Спасибо, попробую. При использовании этого решения будет прямая ссылка на фото исходное, это уже хорошо) А в папку image/cache/ фото исходное не будет нарезаться? Хотелось бы и этот процесс вычестить ибо будет лишний раз нагружать CPU сервера

Edited by ilerok

Share this post


Link to post
Share on other sites
10 часов назад, ilerok сказал:

А в папку image/cache/ фото исходное не будет нарезаться? Хотелось бы и этот процесс вычестить ибо будет лишний раз нагружать CPU сервера

 

а то, что вместо сресайзенных изображений из кеша будет каждый раз грузить полные и ужимать через css - это конечно, нагрузку сильно снизит! :ugeek:

 

про кеш изображений в opencart

Share this post


Link to post
Share on other sites
17 минут назад, AlexDW сказал:

 

а то, что вместо сресайзенных изображений из кеша будет каждый раз грузить полные и ужимать через css - это конечно, нагрузку сильно снизит! :ugeek:

 

про кеш изображений в opencart

 

Тестировали - снижает) 

Share this post


Link to post
Share on other sites

Не то тестировали. Данная операция больше вреда принесёт, чем мнимой пользы.

  • +1 1

Share this post


Link to post
Share on other sites
7 минут назад, Tom сказал:

Не то тестировали. Данная операция больше вреда принесёт, чем мнимой пользы.

Ну действительнео быстрее) Зачем мне тут обманывать вас?))

 

Когда исходное фото имеет размеры 1000 на 1000px, очень даже ускоряет отдавая на него прямую ссылку. Чем расайзить каждое..

 

+ на одну страницу выводит по 30 товаров, естественно ресайз каждого фото в таких размерах грузит CPU намного сильнее чем прямая ссылка

Edited by ilerok

Share this post


Link to post
Share on other sites
Цитата

например - в каталоге картинка 100х100, в карточке товара - большая, 400х400, в корзине 40x40 и тд

при просмотре проверяется, есть ли нужная картинка такого размера, если нет - создается, если есть - берется из кеша (т.е. не нужно тратить время на ее создание)

уровень сжатия позволяет сохранить картинку нужного размера с небольшим весом и практически незаметной потерей в качестве.

 

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

 

представьте, что у вас оригинальная картинка занимает 100кб.

и если отказаться от кеша - каждый раз, вне зависимости от нужного размера будет загружаться именно картинка 100кб.

например, для показа в корзине картинки 40x40 (занимающей обычно около 5кб в кеше) будет грузиться 100кб.

а если в корзине 10 товаров? это грузить 1МБ только для показа корзины!

 

Share this post


Link to post
Share on other sites

В вашем понимании, кеш  генерируется при каждом открытии страницы, раз речь про некие "нагрузки" ? Может проблема всё же в недопонимании работы опенкарт в этом плане с изображениями товара?

Share this post


Link to post
Share on other sites
4 минуты назад, Tom сказал:

В вашем понимании, кеш  генерируется при каждом открытии страницы, раз речь про некие "нагрузки" ? Может проблема всё же в недопонимании работы опенкарт в этом плане с изображениями товара?

 

Нет, я понимаю, что достаточно один раз открыть список товаров и товарам будет создан кеш изображений. После чего повторное открытие этого спсика в 5 раз быстрее происходит.

 

Но дело в том, что товары обновляются и добавляются ежедневно в количествах +- 3000шт.

 

Например добавились сегодня 3000 новых твоаров - пользователь открывает категорию с ними и ждет долго пока каждому создастся кеш :( А ждет реально долго(( 

 

Понятно что второй раз они у него откроются уже быстрее.. но не факт что после таких подвисаний он захочет еще раз посетить сайт) 

Share this post


Link to post
Share on other sites

я думаю что умнее просто создавать кеш в фоне

Share this post


Link to post
Share on other sites

Возможно есть какие-то решения оптимизирующие скорость работы ресайзинга? Например решения по настройке сервера рекомендуемые или еще что-то.

 

У меня сейчас сервер VPS, на PHP 7 (C OpCache), операционка CENT OS 7, cpanel + whm последней версии. Стоит это все на Litespeed веб сервере.

 

Подробнее про litesped можно глянуть тут https://www.litespeedtech.com/ 

 

даже litespeed который быстрее чем apache в 20 раз - не справляется))

Edited by ilerok

Share this post


Link to post
Share on other sites
5 минут назад, spectre сказал:

я думаю что умнее просто создавать кеш в фоне

 

в фоновом это в момент добавления товара в базу? это возможно?

Share this post


Link to post
Share on other sites
5 минут назад, ilerok сказал:

 

в фоновом это в момент добавления товара в базу? это возможно?

ну а чего нет, собрать все размеры которые используются и прогонять периодически через resize

Share this post


Link to post
Share on other sites
5 минут назад, spectre сказал:

ну а чего нет, собрать все размеры которые используются и прогонять периодически через resize

Я задавал этот вопрос на форуме ранее, тоже была идея предварительно создавать кеш. Но меня зафлудили, что дурацкая идея и тд) Так как прогон вообще положит сервер, когда товаров более 800 тысяч. А у меня их более 800 тыс) Вот собственно до сих пор проблему и не решил. 

Share this post


Link to post
Share on other sites
38 минут назад, ilerok сказал:

Но дело в том, что товары обновляются и добавляются ежедневно в количествах +- 3000шт.

ну так их id известен?

Вот и прогонять их
В cron запихнуть задачу по ресайзингу, где брать обновленные товары и ресайзить изображения

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.