Главная » Блог » Обрезка текстов комментариев на странице всех комментариев

Обрезка текстов комментариев на странице всех комментариев
30 июня 2018

В беспощадной борьбе с дублями контента попросили подсказать, как обрезать контент комментария на странице всех комментариев, т.е. на странице /comments

АКТУАЛЬНО ДЛЯ 2.10.0

Такой комментарий 

в ленте комментариев будет выглядеть так

Решить вопрос программным методом с помощью небольшого компонента не получилось, зато получилось правками в шаблоне. Совсем небольшими.

1. Откроем файл templates/ваш_шаблон/controllers/comments/list_index.tpl.php Если такого файла нет, скопируйте его из шаблона default в свой шаблон, чтобы при обновлении icms правки не потерялись.

В нем замените 

<?php
            echo $this->renderChild('comment', array(
                'comments'         => $items,
                'user'             => $user,
                'target_user_id'   => $target_user_id,
                'is_highlight_new' => false,
                'is_levels'        => false,
                'is_controls'      => false,
                'is_show_target'   => true
            ));
        ?>

на

<?php
            echo $this->renderChild('comment_index', array(
                'comments'         => $items,
                'user'             => $user,
                'target_user_id'   => $target_user_id,
                'is_highlight_new' => false,
                'is_levels'        => false,
                'is_controls'      => false,
                'is_show_target'   => true
            ));
        ?>

т.е. мы указали, что хотим в ленте комментариев выводить комментарий с помощью своего шаблона, который доработаем.

2. Скопируйте шаблон комментария templates/ваш_шаблон/controllers/comments/comment.tpl.php и назовите его comment_index.tpl.php Если такого файла нет, скопируйте его из шаблона default в свой шаблон, чтобы при обновлении icms правки не потерялись.

В нем замените

<?php echo $entry['content_html']; ?>

на

<?php echo html_clean($entry['content_html'],20); ?>

где 20 - число символов, до которых обрезать.

Готово. 

Скачать файлы с правками:

list_index.tpl.php

comment_index.tpl.php