Главная | Форум
Меню
Категории
Скрипты для uCoz [127]
Все для Web мастера [11]
DLE шаблоны [6]
DLE хаки [4]
DLE релизы [1]
Прочий софт [1]
Шаблоны для uCoz [0]
Мини-чат
Друзья сайта
Статистика
Главная » 2012 » Март » 4 »Скачать Похожие новости DLE 9.4 [FIX]
Скачать Похожие новости DLE 9.4 [FIX] бесплатно
20:03
Похожие новости DLE 9.4 [FIX]

Автор: MSW
Версия Движка: 9.4

В версии 9.4 есть возможность настроить вид вывода похожих новостей с разными параметрами.
Но возникла проблема при использовании тега
{text limit="150"}
текст обрезается по количеству букв, и как то не очень красиво, так как казалось бы должна проходить фильтрация хтмл тегов, но вот она не проходит и в результате вывод картинок получается не таким как хотелось бы(на картинке правый нижний блок - картинка не на своём месте).

Предлагаю выводить не по количеству символов, а по количеству слов.
Решение:
1. Файл: /engine/modules/functions.php
!!! Для тех у кого установлен модуль Tracker for DLE этот пунк не нужно выполнять !!!
После:
if( ! defined( 'DATALIFEENGINE' ) ) {
    die( "Hacking attempt!" );
}

Добавить:
function max_word($text, $counttext = 50, $sep = ' ') {
    $words = preg_split('/ /', $text);
    if(count($words)>$counttext) $text = join($sep, array_slice($words, 0, $counttext));
    return $text;
}

2. Файл: /engine/modules/show.full.php
Найти:
$related['short_story'] = strip_tags( $related['short_story'], "<br>" );
                        $related['short_story'] = trim(str_replace( "<br>", " ", str_replace( "<br />", " ", $related['short_story'] ) ));
            
                        if( $count AND dle_strlen( $related['short_story'], $config['charset'] ) > $count ) {
                                
                            $related['short_story'] = dle_substr( $related['short_story'], 0, $count, $config['charset'] );
                                
                            if( ($temp_dmax = dle_strrpos( $related['short_story'], ' ', $config['charset'] )) ) $related['short_story'] = dle_substr( $related['short_story'], 0, $temp_dmax, $config['charset'] );
                            
                        }

Заменить на:
$related['short_story'] = strip_tags($related['short_story']);
$related['short_story'] = max_word($related['short_story'], $count);

3. Файл шаблона: relatednews.tpl
используем тег
{text limit="15"}


Где 15 - число выводимых слов.

В результате получаем вывод по количеству слов:
Похожие новости DLE 9.4 [FIX]
HTML
BB-Code
Ссылка
Категория: DLE хаки | Просмотров: 393 | Добавил: tolik40m16 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Профиль
Пожалуйста, зарегистрируйтесь или войдите в свой аккаунт.
  • Войти
  • Календарь
    «  Март 2012  »
    ПнВтСрЧтПтСбВс
       1234
    567891011
    12131415161718
    19202122232425
    262728293031
    Поиск
    Архив записей
    Наш опрос
    На какой платформе ваш сайт?
    Всего ответов: 18