вопрос
Добрый день!
Гуру DLЕ, возможен ли сабж? Захотел выводить полные новости в одной из категорий и был уверен, что {full-story} работает в шаблоне короткой новости, ан нет.
Вариант № 1 — засунуть весь текст в короткую новость ({short-story}, напротив, выводится в шаблоне полной новости), увы, не подходит, так как текст у меню бьется картинкой.
Вариант № 2 —Block.Pro, но насколько это будет кашерно в плане нагрузки, ведь он будет вызываться 5-10 раз на странице?
Заранее большое спасибо за помощь!
Гуру DLЕ, возможен ли сабж? Захотел выводить полные новости в одной из категорий и был уверен, что {full-story} работает в шаблоне короткой новости, ан нет.
Вариант № 1 — засунуть весь текст в короткую новость ({short-story}, напротив, выводится в шаблоне полной новости), увы, не подходит, так как текст у меню бьется картинкой.
Вариант № 2 —Block.Pro, но насколько это будет кашерно в плане нагрузки, ведь он будет вызываться 5-10 раз на странице?
Заранее большое спасибо за помощь!
Итак, начнем.
1.0 Открыть файл engine/engine.php
Найти в SQL запросе (примерно 13 шт.)
Заменить на (привести в такой вид)
2.0 Открыть файл engine/modules/show.short.php
Найти
Добавить выше
3.0 В шаблоне shortstory.tpl использовать следующие теги:
Очистить Кеш, Готово!
PS: писал с мобилы, сильно не пинать ;)
1.0 Открыть файл engine/engine.php
Найти в SQL запросе (примерно 13 шт.)
CHAR_LENGTH(p.full_story) as full_story, p.xfields,
Заменить на (привести в такой вид)
CHAR_LENGTH(p.full_story) as full_story, p.full_story, p.xfields,
2.0 Открыть файл engine/modules/show.short.php
Найти
if( isset($view_template) AND $view_template == "rss" ) {
$tpl->set( '{rsslink}', $full_link );
Добавить выше
$row['full_story'] = stripslashes($row['full_story']);
// out this tags "{full-story limit=x}"
if( preg_match( "#\\{full-story limit=['\"](.+?)['\"]\\}#i", $tpl->copy_template, $matches ) ) {
$count = intval($matches[1]);
$row['full-story'] = str_replace( "</p><p>", " ", $row['full_story'] );
$row['full-story'] = strip_tags( $row['full-story'], "<br>" );
$row['full-story'] = trim(str_replace( "<br>", " ", str_replace( "<br />", " ", str_replace( "\n", " ", str_replace( "\r", "", $row['full-story'] ) ) ) ));
if( $count AND dle_strlen( $row['full-story'], $config['charset'] ) > $count ) {
$row['full-story'] = dle_substr( $row['full-story'], 0, $count, $config['charset'] );
if( ($temp_dmax = dle_strrpos( $row['full-story'], ' ', $config['charset'] )) ) $row['full-story'] = dle_substr( $row['full-story'], 0, $temp_dmax, $config['charset'] );
}
$tpl->set( $matches[0], $row['full-story'] );
} else {
$tpl->set( '{full-story}', $row['full_story'] );
}
// out this tags "{full-story limit=x}"
3.0 В шаблоне shortstory.tpl использовать следующие теги:
{full-story}
{full-story limit="200"}
Очистить Кеш, Готово!
PS: писал с мобилы, сильно не пинать ;)