Публикации

Форумы

Большая картинка в новости
 

Большая картинка в новости

 
Модераторы: Патрик, net1313, Predator, Perfecthus, Kapman
Автор Добавил
Offline Dru
30.06.15 - 21:03
Dru

Сообщений: 101
Привет всем! Может кто делал, чтобы на главной странице в новостях отображались миниатюры, а при переходе на полную новость отображалась большая картинка (оригинал или больше, чем миниатюра)?
Вернуться наверх
Сайт
Популярность сообщения: 0
Рекламный блок
VPS
Наверх

Offline Real
30.06.15 - 21:26
Real

Сообщений: 1238
Ну вот сонва - вопрос про погоду.
– Цитата: 
чтобы на главной странице в новостях отображались миниатюры
а каким способом ты выводишь новости на главную?
Варианты:
1. other_news_menu
2. сделал news.php главной страницей сайта (имхо идиотизм от разработчиков движка)
3. какой-то еще (свой) вариант ....

В любом случае за вывод миниатюры и большой картинки отвечают т.н. "шоткоды"
Список стандартных шоткодов для новостей есть тут
Для решения задачи достаточно прописать нужный шоткод в файле theme.php активной темы сайта:
- шаблон одной новости $NEWSSTYLE = '...'
- шаблон меню для главной (если оно на главной) $OTHERNEWS_STYLE = '...'
Вернуться наверх
Популярность сообщения: 1
 
Offline Dru
30.06.15 - 21:41
Dru

Сообщений: 101
Real: новости на главную выводятся посредством news.php. Я его переименовал в index.php.
На главной все отображается, как надо - миниатюра 300 px. Хотя в theme.php можно и поменять в $NEWSSTYLE размер и т.д.
Хотелось, что бы при открытии новости была не миниатюра, а большая картинка.
Вернуться наверх
Сайт
Популярность сообщения: 0
 
Offline Real
01.07.15 - 08:44
Real

Сообщений: 1238
По докам миниатюру и оригинальную картинку должны отдавать шоткоды {NEWSTHUMBNAIL} и {NEWSIMAGE} соотв.
Однако, код у них идентичный - недоработка разработчиков.

Открывай файл files/shortcode/batch/ news_shortcodes.php
Найди этот код (стр. 268-278)
  1. SC_BEGIN NEWSTHUMBNAIL
  2. $news_item = getcachedvars('current_news_item');
  3. $param = getcachedvars('current_news_param');
  4. return (isset($news_item['news_thumbnail']) && $news_item['news_thumbnail']) ? "<a href='".e_HTTP."news.php?item.".$news_item['news_id'].".".$news_item['news_category']."'><img class='".$GLOBALS['NEWS_CSSMODE']."_image' src='".e_IMAGE_ABS."newspost_images/".$news_item['news_thumbnail']."' alt='' style='".$param['thumbnail']."' /></a>" : "";
  5. SC_END
  6.  
  7. SC_BEGIN NEWSIMAGE
  8. $news_item = getcachedvars('current_news_item');
  9. $param = getcachedvars('current_news_param');
  10. return (isset($news_item['news_thumbnail']) && $news_item['news_thumbnail']) ? "<a href='".e_HTTP."news.php?item.".$news_item['news_id'].".".$news_item['news_category']."'><img class='".$GLOBALS['NEWS_CSSMODE']."_image' src='".e_IMAGE_ABS."newspost_images/".$news_item['news_thumbnail']."' alt='' style='".$param['thumbnail']."' /></a>" : "";
  11. SC_END


Во втором шоткоде NEWSIMAGE на строке 277 надо изменить код
  1. SC_BEGIN NEWSIMAGE
  2. $news_item = getcachedvars('current_news_item');
  3. $param = getcachedvars('current_news_param');
  4. return (isset($news_item['news_thumbnail']) && $news_item['news_thumbnail']) ? "<a href='".e_HTTP."news.php?item.".$news_item['news_id'].".".$news_item['news_category']."'><img class='".$GLOBALS['NEWS_CSSMODE']."_image' src='".e_IMAGE_ABS."newspost_images/".str_replace('thumb_', '', $news_item['news_thumbnail'])."' alt='' style='".$param['thumbnail']."' /></a>" : "";
  5. SC_END


После этой замены шоткод NEWSIMAGE должен возвращать картинку оригинального размера.
Вернуться наверх
Популярность сообщения: 0
 
Offline Dru
03.07.15 - 21:01
Dru

Сообщений: 101
Попробовал. Не получается все равно. Может в теме что то прописать?
В теме прописан шорткод только NEWSIMAGE. Получается на странице новостей картинка, а при открытии новости тоже самая картинка, если выбирать в картинку, а ни миниатюру. Или миниатюру, то тогда везде миниатюра. Есть разгроничения между краткой новостью и полной?
Вот код темы:
+ Показать

Вернуться наверх
Сайт
Популярность сообщения: 0
 
Offline Real
09.07.15 - 16:01
Real

Сообщений: 1238
Dru: в коде твоей темы не увидел переменную $NEWSLISTSTYLE
Суть моего предложения
1 - внести изменения в оригинальный шоткод NEWSIMAGE, чтобы он отдавал оригинал вместо тумбы
Вот это изменение src='".e_IMAGE_ABS." newspost_images/" .str_replace('thumb_', '', $news_item['news_thumbnail']) ." - я добавил str_replace()
2 - для рендера списка новостей и одной новости использовать разные шаблоны с разными шоткодами в этих шаблонах.
  1. $NEWSSTYLE = '<!-- some html -->
  2. {NEWSIMAGE}
  3. <!-- other html -->';
  4.  
  5. $NEWSLISTSTYLE = '<!-- some html -->
  6. {NEWSTHUMBNAIL}
  7. <!-- other html -->';

Вернуться наверх
Популярность сообщения: 1
 
Offline Dru
11.07.15 - 19:39
Dru

Сообщений: 101
Real: Сделал все так, но и в списке новостей и в одной новости выводится большая картинка.
Вернуться наверх
Сайт
Популярность сообщения: 0
 
Offline Real
11.07.15 - 20:56
Real

Сообщений: 1238
Dru: попробуй кеш сайта почистить и отключить.
Вернуться наверх
Популярность сообщения: 0
 
Offline Dru
14.07.15 - 13:55
Dru

Сообщений: 101
Real: Какая то мистика.
В файле файл files/shortcode/batch/ news_shortcodes.php изменил на

  1. SC_BEGIN NEWSIMAGE
  2. $news_item = getcachedvars('current_news_item');
  3. $param = getcachedvars('current_news_param');
  4. return (isset($news_item['news_thumbnail']) && $news_item['news_thumbnail']) ? "<a href='".e_HTTP."news.php?item.".$news_item['news_id'].".".$news_item['news_category']."'><img class='".$GLOBALS['NEWS_CSSMODE']."_image' src='".e_IMAGE_ABS."newspost_images/".str_replace('thumb_', '', $news_item['news_thumbnail'])."' alt='' style='".$param['thumbnail']."' /></a>" : "";
  5. SC_END


+ Показать

Вернуться наверх
Сайт
Популярность сообщения: 0
 
 
Большая картинка в новости

Перейти:  Вернуться наверх