Перейти к публикации

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

Здравствуйте, осуществил вывод похожих новостей с применением {image-x}, но есть небольшая проблема, картинка вставляется размера Medium, я ее уменьшил через CSS, но гугл ругается, что картинку желательно бы грузить не большую, а маленькую.

Да и в целом это куда более правильно.

Каким образом можно изменить вывод по сути posts/2017-03/medium/1490916392 на posts/2017-03/thumbs/1490916392 при наличии таковой.

по аналогии с работой [xfvalue_thumb_url_X]

 

Спасибо

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

Только что проверил, если в текст вставлена картинка размера миниатюры, в {image-x} будет thumbs. Если же в текст вставлена средняя, то будет medium.

Т.е. {image-x} выдаёт картинку конкретно того размера, которая используется в тексте материала.

 

Чтобы принудительно в {image-x} выводить всегда thumbs вместо medium, сделайте следующее:

 

В файле engine/modules/show.short.php найти:

$tpl->copy_template = str_replace( '{image-'.$i_count.'}', $url, $tpl->copy_template );

Заменить на:

$url_image_x = str_replace('medium', 'thumbs', $url);
$tpl->copy_template = str_replace( '{image-'.$i_count.'}', $url_image_x, $tpl->copy_template );

 

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

Изменено пользователем Lashchevskiy
Ссылка на сообщение
Поделиться на других сайтах
В 24.09.2017 в 01:22, Lashchevskiy сказал:

Только что проверил, если в текст вставлена картинка размера миниатюры, в {image-x} будет thumbs. Если же в текст вставлена средняя, то будет medium.

Т.е. {image-x} выдаёт картинку конкретно того размера, которая используется в тексте материала.

 

Чтобы принудительно в {image-x} выводить всегда thumbs вместо medium, сделайте следующее:

 

В файле engine/modules/show.short.php найти:


$tpl->copy_template = str_replace( '{image-'.$i_count.'}', $url, $tpl->copy_template );

Заменить на:


$url_image_x = str_replace('medium', 'thumbs', $url);
$tpl->copy_template = str_replace( '{image-'.$i_count.'}', $url_image_x, $tpl->copy_template );

 

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

Здравствуйте, вроде все логично, но не работает, версия дле 11.3 не такая старая. 

Большое спасибо.

 

PS, нашел решение:

 

Заменить  в файле engine/modules/show.full.php

$tpl2->copy_template = str_replace( '{image-'.$i_count.'}', $url, $tpl2->copy_template );

на 

$url_image_x = str_replace('medium', 'thumbs', $url);
$tpl2->copy_template = str_replace( '{image-'.$i.'}', $url_image_x, $tpl2->copy_template );

 

PS2 позволило улучшить показатель по скорости загрузки от гугла с 60-64 (poor) до 67-75 (needs work), в зависимости от количества больших картинок в похожих новостях.

+ само собой снизить вес каждой страницы. Это не идеальное решение, так как если в краткой новости установлена полная картинка, то ее адрес не изменится, но 90% новостей на сайте имеют среднюю копию, так что..

Изменено пользователем south_park
Ссылка на сообщение
Поделиться на других сайтах
12 часа назад, south_park сказал:

PS, нашел решение:

 

Вы нашли точно такое же решение как и я вам советовал, разница только что у вас речь про полную информацию материала, а я предложил для краткой новости.

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, Lashchevskiy сказал:

Вы нашли точно такое же решение как и я вам советовал, разница только что у вас речь про полную информацию материала, а я предложил для краткой новости.

Все верно, я взял ваше решение и начал ковырять пытаясь понять почему не работает замена, вот и нашел причину. 

Еще раз спасибо. 

Изменено пользователем south_park
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

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