0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 2249 Просмотров
*

ArtHodorev

  • Новичок
  • 2
  • 0 / 0
Здравствуйте все. Столкнулся с ситуацией, в которой мне необходимо сократить слова или символы интротекста в блоге категории до определенного количества.
Выводится анонс, на сколько я понял, в файле "blog_item.php" вот в этом месте:
Код
<?php if (!$params->get('show_intro')) : ?>
<?php echo $this->item->event->afterDisplayTitle; ?>
<?php endif; ?>
<?php echo $this->item->event->beforeDisplayContent; ?> <?php echo $this->item->introtext; ?>

Я нашел в сети пару примеров решения подобной проблемы, но моих знаний в php не достаточно, чтобы адаптировать эти решения под свои нужды.
Решение с сокращением вывода анонса посимвольно:
Код
<? $gij=mb_substr($product->short_description, 0, 300). '...';?>
            <?php echo $gij;?>
Но тут, по всей видимости, исправлялся какой-то модуль интернет-магазина (переменная $product меня надолкнула на эту мысль).

И второе решение. Уже по сокращению слов:
Код
<?$str=($product->short_description);
            //разбиваем на массив
             $arr_str = explode(" ", $str);
            //берем первые 6 элементов
            $arr = array_slice($arr_str, 0, 12);
            //превращаем в строку
            $new_str = implode(" ", $arr);
 
           // Если необходимо добавить многоточие
            if (count($arr_str) > 12) {
            $new_str .= '...';
            }
            echo $new_str;//Выведет 'Этот текст имеет большое количество пробелов и...'?>

Мне подойдет любой вариант выхода из ситуации. Помогите пожалуйста.
*

fbr

  • Завсегдатай
  • 1467
  • 167 / 7
В файле blog_item.php находите и заменяете код:

Код: php
<?php echo $this->item->introtext; ?>

меняете на

<?php echo JHtml::_('string.truncate', ($this->item->introtext), 200); ?>

где 200 - нужное количество символов
*

midav

  • Давно я тут
  • 926
  • 115 / 1
Тогда уж заодно можно вырезать HTML теги .

Код: php
<?php echo JHtml::_('string.truncate', ($this->item->introtext), 200, true, false); ?>
Ответы на вопросы по CSS . Откройте для себя Firebug
*

Efanych

  • Глобальный модератор
  • 4685
  • 644 / 0
  • Меняю свою жизнь на 360°!
Тогда уже интротекст вообще нафиг не нужен. Обрезайте полный. Заодно и readmore ставить не нужно будет...
Создание сайтов, шаблонов, помощь в решении проблем.
*

ArtHodorev

  • Новичок
  • 2
  • 0 / 0
fbr
Спасибо большое, все получилось. Небольшой вопрос: после текста теперь появляется многоточие и при чем на новой строке. Само многоточие меня не парит, но было бы здорово загнать его сразу после последнего символа без перевода на новую строку. Это возможно сделать?
*

lalalag

  • Захожу иногда
  • 162
  • 0 / 3
а плагин какой то есть? ато не хочется пилить это каждый раз после обновлений
*

Serg_

  • Захожу иногда
  • 170
  • 24 / 1
  • Skype: smile_bot (Запорожье)
Цитировать
не хочется пилить это каждый раз после обновлений
Почитайте про переопределения Joomla.
Вы очень сильно себе упростите дальнейшую работу с ней.
К примеру, можно в папку шаблона скопировать com_content/category/blog_item.php отредактировать его и обновляться спокойненько.
*

Gover

  • Захожу иногда
  • 197
  • 3 / 0
Может проще воспользоваться специальным плагином http://gruz.org.ua/en/extensions/autoreadmore-plugin-for-joomla.html
*

fencer2

  • Новичок
  • 6
  • 0 / 0
fbr
Спасибо большое, все получилось. Небольшой вопрос: после текста теперь появляется многоточие и при чем на новой строке. Само многоточие меня не парит, но было бы здорово загнать его сразу после последнего символа без перевода на новую строку. Это возможно сделать?

Так все таки, как многоточие перенести в одну строку с текстом или вообще его убрать?  *ОХ-Х-Х*
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Полусить id материала в модуле mod_breadcrumbs

Автор Шмайсер

Ответов: 3
Просмотров: 90
Последний ответ 29.06.2020, 15:21:50
от Шмайсер
Как скрыть вкладки Публикация и Язык из макета формы добавления материала?

Автор Chigolberi

Ответов: 7
Просмотров: 174
Последний ответ 28.06.2020, 14:57:28
от Chigolberi
Как назначить свой макет формы добавления материала?

Автор Chigolberi

Ответов: 10
Просмотров: 133
Последний ответ 26.06.2020, 11:30:38
от Chigolberi
Интеграция FancyBox 3 с контентом материала

Автор Chigolberi

Ответов: 20
Просмотров: 289
Последний ответ 20.06.2020, 19:22:27
от Chigolberi
Ограничение количества символов вводного текста

Автор Chigolberi

Ответов: 2
Просмотров: 99
Последний ответ 18.06.2020, 08:40:52
от Chigolberi