Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по PHP Текст похожих новостей из полного содержимого

Текст похожих новостей из полного содержимого


     13.01.2012    Общие вопросы по PHP, Ламерские вопросы    2019

вопрос
Как сделать так, чтобы текст похожих новостей брался не из короткой, а из полной новости?

Ответил: yackers


Редактируем engine/modules/show.full.php

Ищем:
$db->query( "SELECT id, date, short_story, xfields, title, category, alt_name, flag FROM " . PREFIX . "_post WHERE {$stop_list}MATCH (title, short_story, full_story, xfields) AGAINST ('$body') AND id != " . $row['id'] . " AND approve=1" . $where_date . " LIMIT " . $config['related_number'] );


Заменяем на:
$db->query( "SELECT id, date, short_story, full_story, xfields, title, category, alt_name, flag FROM " . PREFIX . "_post WHERE {$stop_list}MATCH (title, short_story, full_story, xfields) AGAINST ('$body') AND id != " . $row['id'] . " AND approve=1" . $where_date . " LIMIT " . $config['related_number'] );


Ниже ищем
    $tpl2->set( $matches[0], $related['short_story'] );
        } else $tpl2->set( '{text}', $related['short_story'] );


Заменяем на:
    $tpl2->set( $matches[0], $related['full_story'] );
            
                    } else $tpl2->set( '{text}', $related['full_story'] );


Вот и все!!! Теперь в шаблоне relatednews.tpl - тег {text} - выведет полную новость вместо короткой!!!

Комментарии пользователей (5)

dim
78 | 17

dim - 20 января 2012 21:59 - Юзер

Спасибо, конечно, но новость не обрезается, а отображается полностью, хоть у меня и стоит {text limit="250"}. А нужно чтобы полная новость обрезалась.

yackers
34

51 | 49

yackers - 21 января 2012 11:56 - Юзер

Если нужно с учетом лимита то тут побольше заменять придется

Там же в show.full.php

Найти:
if ( preg_match( "#\\{text limit=['\"](.+?)['\"]\\}#i", $tpl2->copy_template, $matches ) ) {


И до строчки:
$tpl2->set( $matches[0], $related['full_story'] );


В этом промежутке вам нужно будет заменить все
$related['short_story']
НА
$related['full_story']


И все тогда тег text будет обрезать полную новость а не короткую!!!
ЗЫ > Там около 12 замен нужно сделать

dim
78 | 17

dim - 21 января 2012 16:41 - Юзер

Спасибо, работает! wink

Windows
9 | 9

Windows - 27 мая 2012 08:10 - Юзер

Сделал все по инструкции, пропали картинки в похожих новостях. Как можно вернуть их обратно?

Windows
9 | 9

Windows - 27 мая 2012 08:38 - Юзер

Так, картинка появилась, нашел, а вот есть одна проблемка... Если в полной новости пара картинок, то в похожих новостях отображается вместо одной все. Как это исправить скажите пожалуйста?

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы