繁体   English   中英

如何在joomla 3.x博客布局中添加“标签”

[英]How to add “tags” in joomla 3.x blog layout

我想在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通过在/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; ?>

但我有一个错误?

这是将它们添加到单个Web链接的方法

    <?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引用与您的内容匹配。

是我想要的设计图片

而且他在页面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 : ?>

我做错了吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM