Перед созданием новой темы, пожалуйста, ознакомьтесь с FAQ по LinkorCMS

[РЕШЕНА]Миниатюра картинки новости в блоке

Супер пользователь
Сообщений: 404
Всем привет.
Подскажите,как сделать вывод картинок новостей в блоке "Новости" ??

-- Изменено "Amney": 07.05.2014 01:32 --
Разработчик
Сообщений: 605
Попробуйте заменить в файле /blocks/news/index.php следующую строчку
'url' => Ufu('index.php?name=news&op=readfull&news='.SafeDB($new['id'], 11, int).'&topic='.SafeDB($new['topic_id'], 11, int), 'news/{topic}/{news}/')

на
'url' => Ufu('index.php?name=news&op=readfull&news='.SafeDB($new['id'], 11, int).'&topic='.SafeDB($new['topic_id'], 11, int), 'news/{topic}/{news}/'),
'image' => GetThumb(SafeDB($new['icon'], 255, str), 100, 200)


Потом в шаблоне блока (/block/content/news.html) вставить где нужно <img src="{news.image}">

-- Изменено "Мартин": 05.10.2013 20:38 --
Супер пользователь
Сообщений: 404
Мартин,сделал так,но картинки почему то не отображаются, http://horror-films.net

Блин,кажись понял почему,потому что наверное в директории неправильной картинки лежат...

Нет,не отображаются все равно...

// Не оставляем несколько сообщений подряд за небольшое время, а дописываем в предыдущее через редактирование. Мартин.

-- Изменено "Мартин": 05.10.2013 20:26 --
Разработчик
Сообщений: 605
Извиняюсь, неправильно скопировал то, на что менять нужно. Искомое:
'url' => Ufu('index.php?name=news&op=readfull&news='.SafeDB($new['id'], 11, int).'&topic='.SafeDB($new['topic_id'], 11, int), 'news/{topic}/{news}/'),
'image' => GetThumb(SafeDB($new['icon'], 255, str), 100, 200)

Где 100 - ширина, а 200 - высота (все в пикселях). Подберите подходящее под вашу верстку.

-- Изменено "Мартин": 05.10.2013 20:39 --
Супер пользователь
Сообщений: 171
Наверное нужно ещё добавить
$news_vars['url'] = $new['url'];
$news_vars['image'] = $new['image'];
$news_vars['text'] = $text;
Разработчик
Сообщений: 605
MEN, точно, да.
Супер пользователь
Сообщений: 62
Я вставил в index.php
'url' => Ufu('index.php?name=news&op=readfull&news='.SafeDB($new['id'], 11, int).'&topic='.SafeDB($new['topic_id'], 11, int), 'news/{topic}/{news}/'),
'image' => GetThumb(SafeDB($new['icon'], 255, str), 100, 200),

и вот это
$news_vars['image'] = $new['image'];


news.html
<img src="{news.image}">


Картинки выводятся, но не всех новостей . Почему так?
Посмотреть можно тут http://my-play-zona.ru/

-- Изменено "Серго": 06.10.2013 07:31 --

-- Изменено "Серго": 06.10.2013 07:32 --
Супер пользователь
Сообщений: 171
Мартин:

на что менять нужно
'image' => GetThumb(SafeDB($new['icon'], 255, str), 100, 200)

Серго:

Я вставил в index.php
'image' => GetThumb(SafeDB($new['icon'], 255, str), 100, 200),

Попробуйте найти одно отличие.
Супер пользователь
Сообщений: 94
Вот весь файл index.php в блоке news:

<?
<br />
<br />
/*<br />
 * LinkorCMS 1.4<br />
 * © 2012 LinkorCMS Development Group<br />
 */<br />
<br />
<br />
// Блок Топ Новостей<br />
// LinkorCMS Development Group<br />
if(!defined('VALID_RUN')){<br />
    header("HTTP/1.1 404 Not Found");<br />
    exit;<br />
}<br />
<br />
$vars['title'] = $title;<br />
<br />
$bcache_name = 'news'.System::user()->AccessLevel();<br />
if(!System::cache()->HasCache('block', $bcache_name)){<br />
    $block_config = unserialize($block_config);<br />
    $topic = SafeDB($block_config['topic'], 11, int); // Тема новостей<br />
    $max_news = SafeDB($block_config['count'], 11, int); // Количество новостей в блоке<br />
    if($topic != 0){<br />
        $where = "`enabled`='1' and `topic_id`='$topic'";<br />
    }else{<br />
        $where = "`enabled`='1'";<br />
    }<br />
    $newsdb = System::database()->Select('news', GetWhereByAccess('view', $where), $max_news,
 'date', true);<br />
    $news = array();<br />
    foreach($newsdb as $new){<br />
        $news[] = array(<br />
            'title' => SafeDB($new['title'], 255, str),<br />
            'icon' => GetThumb(SafeDB($new['icon'], 255, str), 100, 100),<br />
            'text' => substr(SafeDB($new['start_text'], 0, str, true, false), 0, 255),<br />
            'date' => $new['date'],<br />
            'url' => Ufu('index.php?name=news&op=readfull&ne
ws='.SafeDB($new['id'], 11, int).'&topic='.SafeDB($new['topic_id'], 11, int), 'news/{topic}/{news}/')<br />
        );<br />
    }<br />
    System::cache()->Write('block', $bcache_name, $news);<br />
}else{<br />
    $news = System::cache()->Get('block', $bcache_name);<br />
}<br />
<br />
$count = count($news);<br />
$en = !($count == 0);<br />
$tempvars['content'] = 'block/content/news.html';<br />
System::site()->AddBlock('no_news', !$en);<br />
System::site()->AddBlock('block_news', $en);<br />
System::site()->AddBlock('block_news_news', true, true, 'news');<br />
<br />
foreach($news as $new){<br />
    $text = $new['text'];<br />
    $pp = strpos($text, '. ');<br />
    if($pp !== false){<br />
        $text = substr($text, 0, $pp+1);<br />
    }else{<br />
        $text = substr($text, 0, 128).' ...';<br />
    }<br />
    $news_vars = array();<br />
    $news_vars['title'] = $new['title'];<br />
    $news_vars['icon'] = $new['icon'];<br />
    $news_vars['url'] = $new['url'];<br />
    $news_vars['text'] = $text;<br />
    $news_vars['date'] = TimeRender($new['date']);<br />
    System::site()->AddSubBlock('block_news_news', true, $news_vars);<br />
}<br />

?>


и всё равно не работает!

Где ошибка ?

-- Изменено "Mnml Mouse": 06.10.2013 10:58 --
Супер пользователь
Сообщений: 171
Mnml Mouse:

и всё равно не работает!
Где ошибка ?

Включите показ ошибок и посмотрите

Parse error: \blocks\news\index.php on line 17 - header("HTTP/1.1 404 Not Found&quot<img src=\"uploads/smilies/emotion_wink.png\" title=\"Wink\">; что то Ваше? для этих целей есть - errorpages\404.html вставьте туда Вашу подмигивающую картинку
Вместо - header("HTTP/1.1 404 Not Found" ) ;

Замечание: "Undefined index: icon" в blocks\news\index.php на линии 62 - $news_vars['icon'] = $new['icon'];
Вместо - $news_vars['image'] = $new['image'];

И после изменений чистите cache, в block есть (news.cache ) там запись до изменений.

Скрытый текст


-- Изменено "MEN": 06.10.2013 13:20 --
Супер пользователь
Сообщений: 171
Серго:

Картинки выводятся, но не всех новостей . Почему так?
Посмотреть можно тут http://my-play-zona.ru/

Возможно потому, что Вы дали им названия на кирилице
post1_мы_открылись.jpg
мы_вконтакте.jpg

А вот на латинице выводятся
blizzard_entertainment_na_vistavke_gamescom.jpg
Gta5online.jpg
ubisoft_gaming_alliance.jpg
Разработчик
Сообщений: 605
Перепроверю потом блок. Я бы советовал имена всех файлов сайта давать латиницей без всяких спец знаков и пробелов. Понятно, что сейчас век UTF8 и всего такого, но иногда это вылезает боком. Особенно со старым или буржуйским софтом.
Гости не могут отвечать на темы. Войдите или Зарегистрируйтесь.
Здесь присутствуют
(пользователей: 0, гостей: 1)
Быстрый переход: