在 joomla contant 模块中切割标题字符

cutting title character in joomla contant module

在这种情况下我需要你的帮助;我在 joomla 中有模块,想从 joomla 库 string.php 中剪切带有指定限制的标题。我更改此代码:

<?php if ($params->get('show_title', 1)) : ?>
            <h3 itemprop="name">
    <?php if ($params->get('link_titles') && $params->get('access-view')) : ?>
                    <a href="<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($displayData->slug, $displayData->catid)); ?>" itemprop="url"><?php echo $this->escape($displayData->title); ?></a>
                <?php else : ?>
                    <?php echo $this->escape($displayData->title); ?>
                <?php endif; ?>
            </h3>

此代码:

<?php if ($params->get('show_title', 1)) : ?>
            <h3 itemprop="name">
                <?php if ($params->get('link_titles') && $params->get('access-view')) : ?>
                    <a href="<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($displayData->slug, $displayData->catid)); ?>" itemprop="url">
<?php   
$limit =100; 
if (strlen($this->item->text) > $limit) {
echo (substr($this->item->text, 0, $limit)) . " ... ";
}
else {      
echo  $this->escape($displayData->title); } ?></a><?php else : ?>

                <?php endif; ?>
            </h3>

但不起作用。 感谢大家的关注。

Joomla 有一个内置的 JHtmlString/truncate method 可供您使用,我已经成功地将它与我们的一些模板和覆盖一起使用。

此方法可让您简化代码,并且可以将整个最后 php 块替换为类似以下内容

<?php   
 $limit =100; 
 echo JHTML::_('string.truncate', ($this->item->text), $limit, false, false);
?>

关于 JHtmlString/truncate 的更多信息:https://docs.joomla.org/API16:JHtmlString/truncate

一些可能有用的示例代码:
https://gist.github.com/2dpi/a540527a64f9f0093392

https://hotexamples.com/examples/-/JHtmlString/truncateComplex/php-jhtmlstring-truncatecomplex-method-examples.html

祝你好运!