0

我想在 joomla 3.x 的博客布局中添加文章标签。我覆盖了 joomla 布局文件并尝试blog_style_default_item_title.php在文章中添加下面的代码

 <?php if ($params->get('show_tags', 1) && !empty($this->item->tags)) : ?>
    <?php $this->item->tagLayout = new JLayoutFile('joomla.content.tags'); ?>
    <?php echo $this->item->tagLayout->render($this->item->tags->itemTags); ?>
<?php endif; ?> 

但它没有用。我猜变量名不是一个好名字。有任何想法吗?

我对 php 语言的了解很薄弱,但我看了一下并尝试了一些想法。

我终于通过在下面添加代码得到了一些东西/com_content/category/blog_items.php

<?php $this->item->tagLayout = new JLayoutFile('joomla.content.tags'); ?>
<?php echo $this->item->tagLayout->render($this->item->tags->itemTags); ?>

但我想在blog_style_default_item_title.php文件的标题行添加“标签”

<?php

defined('_JEXEC') or die;

// Create a shortcut for params.
$params = $displayData->params;
$canEdit = $displayData->params->get('access-edit');
JHtml::addIncludePath(JPATH_COMPONENT.'/helpers/html');
JHtml::_('behavior.framework');
?>

<?php if ($params->get('show_title') || $displayData->state == 0 || ($params->get('show_author') && !empty($displayData->author ))) : ?>
    <div class="page-header">


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

    <?php $this->item->tagLayout = new JLayoutFile('joomla.content.tags'); ?>
    <?php echo $this->item->tagLayout->render($this->item->tags->itemTags); ?>


        <?php if ($displayData->state == 0) : ?>
            <span class="label label-warning"><?php echo JText::_('JUNPUBLISHED'); ?></span>
        <?php endif; ?>
    </div>
<?php endif; ?>

但是我有错误???

4

2 回答 2

0

以下是将它们添加到单个网络链接的方式

    <?php $tagsData = $item->tags->getItemTags('com_weblinks.weblink', $item->id); ?>
    <?php if ($this->params->get('show_tags', 1)) : ?>
        <?php $this->item->tagLayout = new JLayoutFile('joomla.content.tags'); ?>
        <?php echo $this->item->tagLayout->render($tagsData); ?>
    <?php endif; ?>

您想要做的是类似的事情,但对于 com_content.article 并确保 $item 和 $this->params 引用与您所拥有的相匹配。

于 2014-01-04T18:40:37.503 回答
0

是我想要的设计图片

他低于页面ID的构成方式(据我所知)

在 blog_item.php 中有这一行调用

...
<?php echo JLayoutHelper::render('joomla.content.blog_style_default_item_title', $this->item); ?>
....

所以在 blog_style_default_item_title.php

....
<div class="page-header">
<?php if ($params->get('show_title')) : ?>
            <h2>essai
                <?php if ($params->get('link_titles') && $params->get('access-view')) : ?>
                    <a href="<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($displayData->slug, $displayData->catid)); ?>">
                    <?php echo $this->escape($displayData->title); ?></a>
                <?php else : ?>

我是不是搞错了??

于 2014-01-21T23:17:12.840 回答