Вариант номер раз
var_dump нам показал наличие
["introtext"]=> string(1822) " Joomla! is all about... //и.т.д. "
выводим первые 50 символов (<объектная переменная>-><имя поля>) (строка, старт, количество символов)
<?php echo substr($item->introtext, 0, 50) . '...'; ?>
выдаст ошибку если встретятся теги html - поэтому далее используем strip_tags() для исключения разметки
<?php echo substr(strip_tags($item->introtext), 0, 50) . '...'; ?>
чтобы не обрезать слова на половине - пользуемся методом Joomla truncate() из класса JHtmlString
сначала подключаем библиотеку JHtmlString сразу после запрета прямого доступа
defined('_JEXEC') or die;
Jloader::register('JhtmlString', JPATH_LIBRARIES.'/cms/html/string.php');
и потом уже в теги <p></p> выводим первые 50 символов с целыми словами
<p> <?php echo JhtmlString::truncate(strip_tags($item->introtext),53); ?> </p>
полный лиситнг модуля
<?php
defined('_JEXEC') or die; Jloader::register('JhtmlString', JPATH_LIBRARIES.'/cms/html/string.php'); ?> <ul class="latestnews<?php echo $moduleclass_sfx; ?>"> <?php foreach ($list as $item) : ?> <li> <a href="/<?php echo $item->link; ?>"> <?php echo $item->title; ?></a> <p> <?php echo JhtmlString::truncate(strip_tags($item->introtext),53); ?> </p> </li> <?php endforeach; ?> </ul>
Альтернативный способ вывода того же самого метода
1) не нужно регистрировать библиотеку, и само выражение строится на методе JHTML , который автоматически загружает нужный класс, через подчеркивание - с указанием класса (string) и метода (truncate)
принцип постороения выражения с применением синтаксиса подчеркивания
<?php echo JHTML::_('string.truncate', $item->introtext, $params->get('introtext_limit')); ?>
само выражение в итоге
<?php echo JHTML::_('string.truncate', strip_tags($item->introtext), 53); ?>
Полный листинг
<?php
defined('_JEXEC') or die;
?>
<ul class="latestnews<?php echo $moduleclass_sfx; ?>">
<?php foreach ($list as $item) : ?>
<li>
<a href="/<?php echo $item->link; ?>">
<?php echo $item->title; ?></a>
<p>
<?php echo JHTML::_('string.truncate', strip_tags($item->introtext), 53); ?>
</p>
</li>
<?php endforeach; ?>
</ul>