Pergunta

Estou a desenvolver um site usando o joomla 3.2.3, onde estive a adição de algumas marcas para o meu joomla artigos que nos artigos é apresentado acima do conteúdo.

Para a listagem de eu usar o 'Item de Menu Tipo:Artigos > Lista de categorias " e eu gostaria de apresentar os artigos Marcas na lista, bem como, e.g.como esta:

[Titulo] [Autor] [Tags]

Desde o joomla não oferece suporte a esta opção no artigo gestor opção para mostrar as marcas na Lista Layout, estou tentando adicionar à lista editando a Lista de arquivos de Layout.Aqui eu fiz um modelo de substituição de:

com_content > Categoria

O que inclui a lista de arquivos:

  • default.php
  • default.xml
  • default_article.php
  • default_children.php

Então eu tentei modificar este arquivo, que cria a lista de layout:

.../templates/my_template/html/com_content/category/default_articles.php

Para criar a etiqueta de coluna para a lista de layout que eu adicionei este código na seção em torno da linha 100:

<?php if ($this->params->get('show_tags')) : ?>
   <th id="categorylist_header_tags">
         <?php echo JHtml::_('grid.sort', 'JTAG', 'tags', $listDirn, $listOrder); ?>
   </th>
<?php endif; ?>

Isto criou e apresenta a 2ª coluna na minha categoria de modo de exibição de lista com o cabeçalho do título:Etiquetas (se estiver definido para 'mostrar' no Artigo Gerenciador de Opção)

E para obter os códigos para apresentar na coluna campos, eu percebi que eu preciso adicionar um código para as marcas na seção em torno da linha 181, onde eu tentei adicionar este código:

   </td>
<?php endif; ?>
<?php if ($this->params->get('show_tags', 1)) : ?>
   <<td headers="categorylist_header_tags" class="list-tags">
      <?php $this->item->tagLayout = new JLayoutFile('joomla.content.tags'); ?>
      <?php echo $this->item->tagLayout->render($this->item->tags->itemTags); ?>
         <?php echo JText::sprintf('JTAG', $article->tags->itemTags); ?>
   </td>
<?php endif; ?>

Este é o código que eu preciso de ajuda, pois não é totalmente de trabalho, ele mostra apenas o texto 'tags' (do 'JTAG"), em campos, e não exibir o artigo da etiqueta de código:

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

que eu tirei de Artigos de exibição de layout padrão para ver como as marcas são prestados.Mas este código apperently não trabalhar directamente na Categoria Layout de lista ou não dar qualquer efeito.


Tentei dar uma olhada neste post:Artigo Marcas mostradas em Artigo Lista-Layout

Mas não têm sido capazes de obter o código deste post para trabalhar para mim:

Foi útil?

Solução

Então, se você olhar os links categoria de layout que você vai ver que as marcas individuais links são displaywed com este código:

<?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; ?>

Então, o que você precisa fazer é configurar o $tagsData corretamente alterar o nome do alias e também certificar-se de que a variável de id é correto.

Você colocar isso dentro do código para o layout de um item individual na lista de sentido no blog_item.php arquivo possivelmente logo após o título.

    <?php $this->item->tagLayout = new JLayoutFile('joomla.content.tags'); ?>
    <?php echo $this->item->tagLayout->render($this->item->tags->itemTags); ?>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top