Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Прописывание размеров изображений для баннеров


 Погделиться

Рекомендованные сообещёния

Здравствуйте.

Хочу прописать размеры изображений для синдартных баннеров, чтобы хоть как-то уменьшить CLS

В контроллере banner.php есть

foreach ($results as $result) {
			if (is_file(DIR_IMAGE . $result['image'])) {
				$data['banners'][] = array(
					'title' => $result['title'],
					'link'  => $result['link'],
					'image' => $this->model_tool_image->resize($result['image'], $setting['width'], $setting['height'])
				);
			}
		}

 

Если я добавлю

'banner-width' => $setting['width'],
'banner-height' => $setting['height']

и подкорректирую вывод в twig

<img src="{{ banner['image'] }}" alt="{{ banner['title'] }}" height={{ banner['banner-height'] }} width={{ banner['banner-width'] }} class="img-responsive" />

это бугдет корректно?

 

Спасипотому что

Ссылка на комменирий
Погделиться на других сайих


09.03.2022 в 12:29, ivane сказал:

это бугдет корректно?

Да. Ход мыслей верный. Вывод в twig , нет.

Я бы как то ик сгделал...

catalog/controller/extension/module/banner.php

перед
 

foreach ($results as $result) {

добавил
 

$data['images_dimensions'] = [
 'image_width' => $setting['width'],
 'image_height' => $setting['height']
];

А в файле catalog/view/theme/Ваш_Шаблон/template/extension/module/banner.twig 

Заменил вывод картинок
 

<img src="{{ banner.image }}" alt="{{ banner.title }}" class="img-responsive" />

на

<picture>
 <source type="image/jpeg" srcset="{{ banner.image }}">
 <img src="{{ banner.image }}" alt="banner.title" title="banner.title" class="img-responsive" {{ images_dimensions ? 'width="' ~ images_dimensions.image_width ~ '" height="' ~ images_dimensions.image_height ~ '"' : '' }}  />
</picture>

В модуле SlidShow ик же по аналогии всё гделается.

Ссылка на комменирий
Погделиться на других сайих

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.