Краткий текст - дополнительные изображения!

  • 4 Ответов
  • 207 Просмотров

U-351

  • Сообщений: 6
    • Просмотр профиля
Доброго всем времени суток!

Помогите плз консультацией. В новостях, есть возможность добавлять серию изображений к статье, с последующим выводом!
Это реализовано в виде тегов {img1}{img2} и т.д.

Фокус в том, что эта возможность работает только для полного текста. Хочу модифицировать скрипт, чтобы в кратком тексте тоже выводились картинки. Был найден следующий фрагмент кода, который вроде как отвечает за парсинг тегов {img} и замену их на картинки. Внизу была добавлена строка обработки {textshort} и вроде как заработало, но не везде. Если обращаться к статье напрямую - то работает, а если смотреть через каталог статей - то парсинга нет, выводит {img1}{img2}..

Подскажите плз, что можно сделать?

/**
* Изображения по тексту
*/
if ( ! empty($item['images']))
{
$im = Json::decode($item['images']);
if (is_array($im))
{
foreach ($im as $k => $v)
{
$ins['float'] = 'imgtext-'.$v['align'];
$ins['alt']   = ( ! empty($v['alt'])) ? $api->siteuni($v['alt']) : '';

$tm->unmanule['image'] = ( ! empty($v['image'])) ? 'yes' : 'no';
$ins['temp_thumb'] = $tm->parsein($tm->create('mod/'.WORKMOD.'/thumb'));

if ( ! empty($v['thumb']))
{
$ins['img'] = $tm->parse(array
(
'float' => $ins['float'],
'thumb' => $v['thumb'],
'image' => $v['image'],
'alt'   => $ins['alt']
),
$ins['temp_thumb']);
}
// Содержимое
$ins['textshort'] = $tm->parse(array('img'.$k => $ins['img']), $ins['textshort']);
$ins['textmore'] = $tm->parse(array('img'.$k => $ins['img']), $ins['textmore']);

}
}
}

sovyonok

  • Сообщений: 43
    • Просмотр профиля
    • Прогулки по Москве
Потому что за вывод каталога и полной статьи отвечают разные куски кода. Вы добавили только в раздел page.

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

U-351

  • Сообщений: 6
    • Просмотр профиля
Да, это верно. Поэтому и прошу консультаций, чтобы ткнули носом в подсказку как это сделать. Перерыл весь мод - не увидел где и как инициализируется $item['images'], чтобы по аналогии сделать в другом месте.

sovyonok

  • Сообщений: 43
    • Просмотр профиля
    • Прогулки по Москве
Есть запрос:
$inq = $db->query
(
"SELECT id, catid, public, stpublic, unpublic, cpu, title, textshort, author,
image_thumb, image_align, image_alt, comments, hits, tags, rating, totalrating
FROM ".$basepref."_".WORKMOD." WHERE act = 'yes' AND catid <> '0'
AND (stpublic = 0 OR stpublic < '".NEWTIME."')
AND (unpublic = 0 OR unpublic > '".NEWTIME."')
ORDER BY public DESC LIMIT ".$conf['pagmain']
);

И есть построчное получение в цикле информации в массив:

		while ($item = $db->fetchassoc($inq))
{
....
}

U-351

  • Сообщений: 6
    • Просмотр профиля
Как-то все равно не очевидно :(
Запрос повторяется по моду несколько раз и модификация запросов по моду все равно ничего не дает.
Если не затруднит - подскажите что конкретно поменять нужно?
« Последнее редактирование: 30 Мая 2018, 05:55:13 от U-351 »