Personalizar lista de artigos

Forum destinado aos programadores que pretendem utilizar o framework do Joomla! 1.5 para fazer suas próprias extensões
Elaine
Novato
Mensagens: 3
Registrado em: 16 Abr 2009, 23:06

Personalizar lista de artigos

Mensagem por Elaine »

Olá pessoal,
tenho visto em vários sites (inclusive neste) a listagem de artigos com layout diferente. Alguém sabe em qual arquivo que eu posso editar esta tabela?
por exemplo: alterar a linha de títulos (traduzir), alterar a ordem das colunas (gostaria de colocar a data do artigo antes do título) e as cores, vi neste site que você percorre a tabela e as linhas mudam de cor.

Alguém pode me dar uma dica?

Grata!
Avatar do usuário
wmfelipe
Joomleiro
Mensagens: 407
Registrado em: 02 Fev 2009, 13:40
Contato:

Re: Personalizar lista de artigos

Mensagem por wmfelipe »

poderia nos dar um exemplo mais prático, com imagens de preferencia? de que tabela está falando?
icefusion
Novato
Mensagens: 39
Registrado em: 15 Abr 2009, 16:41
Localização: Rolandia/Pr
Contato:

Re: Personalizar lista de artigos

Mensagem por icefusion »

http://www.gasoilnet.com.br/os-produtos ... curos.html


eu acho q ela quis dizer isso...


eu tb quero alterar essa coisa ae...
não quero essa tabela....quero apenas os titulos dos artigos como uma lista sem filter sem exibir (numero de artigos por página) sem o id.....
Avatar do usuário
wmfelipe
Joomleiro
Mensagens: 407
Registrado em: 02 Fev 2009, 13:40
Contato:

Re: Personalizar lista de artigos

Mensagem por wmfelipe »

nunca vi esse tipo de listagem não no joomla 1.5.9... :(
eu faria alteraćões no código
icefusion
Novato
Mensagens: 39
Registrado em: 15 Abr 2009, 16:41
Localização: Rolandia/Pr
Contato:

Re: Personalizar lista de artigos

Mensagem por icefusion »

no código do joomla?????
Avatar do usuário
wmfelipe
Joomleiro
Mensagens: 407
Registrado em: 02 Fev 2009, 13:40
Contato:

Re: Personalizar lista de artigos

Mensagem por wmfelipe »

é né?! :D
no componente que faz essa listagem ;)
icefusion
Novato
Mensagens: 39
Registrado em: 15 Abr 2009, 16:41
Localização: Rolandia/Pr
Contato:

Re: Personalizar lista de artigos

Mensagem por icefusion »

viuge...da-lhe procurar essa parada agora.......heauehauehuaheaue
Elaine
Novato
Mensagens: 3
Registrado em: 16 Abr 2009, 23:06

Re: Personalizar lista de artigos

Mensagem por Elaine »

ola
a lista que me refiro é igual a esta
http://www.joomla.com.br/-artigos-mainmenu-43.html

valeu!
icefusion
Novato
Mensagens: 39
Registrado em: 15 Abr 2009, 16:41
Localização: Rolandia/Pr
Contato:

Re: Personalizar lista de artigos

Mensagem por icefusion »

é a mesma lista q apresentei....pelo jeito tem q alterar no código-fonte do joomla!! :(
Avatar do usuário
wmfelipe
Joomleiro
Mensagens: 407
Registrado em: 02 Fev 2009, 13:40
Contato:

Re: Personalizar lista de artigos

Mensagem por wmfelipe »

eu nunca usei listagem normal, só tipo blog. mas se é nativo mesmo, então tem que alterar no código. mas é pouca coisa. em 20 minutos se faz :)
icefusion
Novato
Mensagens: 39
Registrado em: 15 Abr 2009, 16:41
Localização: Rolandia/Pr
Contato:

Re: Personalizar lista de artigos

Mensagem por icefusion »

o duro eh achar o arquivo a ser alterado :(
Avatar do usuário
wmfelipe
Joomleiro
Mensagens: 407
Registrado em: 02 Fev 2009, 13:40
Contato:

Re: Personalizar lista de artigos

Mensagem por wmfelipe »

veja pelo url, o joomla mostra qual componente está sendo usado.
option=com_algumacosa

sei que é o componente com_content pois olhei na url do meu sistema aqui.

boa sorte.
icefusion
Novato
Mensagens: 39
Registrado em: 15 Abr 2009, 16:41
Localização: Rolandia/Pr
Contato:

Re: Personalizar lista de artigos

Mensagem por icefusion »

Elaine....estou te passando o código alterado para a mudança que fiz na listagem.
No meu caso eu tirei toda aquele monte de adicionais e deixei apenas os títulos dos artigos.

o arquivo a ser alterado fica no diretório: diretorio_do_joomla/components/com_content/views/category/tmpl/default_items.php

Código: Selecionar todos

<?php // no direct access
defined('_JEXEC') or die('Restricted access'); ?>
<script language="javascript" type="text/javascript">

	function tableOrdering( order, dir, task )
	{
		var form = document.adminForm;

		form.filter_order.value 	= order;
		form.filter_order_Dir.value	= dir;
		document.adminForm.submit( task );
	}
</script>
<form action="<?php echo $this->action; ?>" method="post" name="adminForm">
<table width="100%" border="0" cellspacing="0" cellpadding="0">

<?php if ($this->params->get('show_headings')) : ?>
<tr>
	
	
	
	<?php if ($this->params->get('show_date')) : ?>
	<td class="sectiontableheader<?php echo $this->params->get( 'pageclass_sfx' ); ?>" width="25%">
		<?php echo JHTML::_('grid.sort',  'Date', 'a.created', $this->lists['order_Dir'], $this->lists['order'] ); ?>
	</td>
	<?php endif; ?>
	<?php if ($this->params->get('show_author')) : ?>
	<td class="sectiontableheader<?php echo $this->params->get( 'pageclass_sfx' ); ?>"  width="20%">
		<?php echo JHTML::_('grid.sort',  'Author', 'author', $this->lists['order_Dir'], $this->lists['order'] ); ?>
	</td>
	<?php endif; ?>
	<?php if ($this->params->get('show_hits')) : ?>
	<td align="center" class="sectiontableheader<?php echo $this->params->get( 'pageclass_sfx' ); ?>" width="5%" nowrap="nowrap">
		<?php echo JHTML::_('grid.sort',  'Hits', 'a.hits', $this->lists['order_Dir'], $this->lists['order'] ); ?>
	</td>
	<?php endif; ?>
</tr>
<?php endif; ?>
<?php foreach ($this->items as $item) : ?>
<tr class="sectiontableentry<?php echo ($item->odd +1 ) . $this->params->get( 'pageclass_sfx' ); ?>" >
	<td align="right">
		
	</td>
	<?php if ($this->params->get('show_title')) : ?>
	
	<td>
		<a href="<?php echo $item->link; ?>">
			<?php echo $item->title; ?></a>
			<?php $this->item = $item; echo JHTML::_('icon.edit', $item, $this->params, $this->access) ?>
	</td>
	<?php else : ?>
	<td>
		<?php
			echo $this->escape($item->title).' : ';
			$link = JRoute::_('index.php?option=com_user&view=login');
			$returnURL = JRoute::_(ContentHelperRoute::getArticleRoute($item->slug, $item->catslug, $item->sectionid));
			$fullURL = new JURI($link);
			$fullURL->setVar('return', base64_encode($returnURL));
			$link = $fullURL->toString();
		?>
		<a href="<?php echo $link; ?>">
			<?php echo JText::_( 'Register to read more...' ); ?></a>
	</td>
	<?php endif; ?>
	
	<?php if ($this->params->get('show_date')) : ?>
	<td>
		<?php echo $item->created; ?>
	</td>
	<?php endif; ?>
	<?php if ($this->params->get('show_author')) : ?>
	<td >
		<?php echo $item->created_by_alias ? $item->created_by_alias : $item->author; ?>
	</td>
	<?php endif; ?>
	<?php if ($this->params->get('show_hits')) : ?>
	<td align="center">
		<?php echo $item->hits ? $item->hits : '-'; ?>
	</td>
	<?php endif; ?>
</tr>
<?php endforeach; ?>
<?php if ($this->params->get('show_pagination')) : ?>
<tr>
	<td colspan="5">&nbsp;</td>
</tr>
<tr>
	<td align="center" colspan="4" class="sectiontablefooter<?php echo $this->params->get( 'pageclass_sfx' ); ?>">
		<?php echo $this->pagination->getPagesLinks(); ?>
	</td>
</tr>
<tr>
	<td colspan="5" align="right">
		<?php echo $this->pagination->getPagesCounter(); ?>
	</td>
</tr>
<?php endif; ?>
</table>

<input type="hidden" name="id" value="<?php echo $this->category->id; ?>" />
<input type="hidden" name="sectionid" value="<?php echo $this->category->sectionid; ?>" />
<input type="hidden" name="task" value="<?php echo $this->lists['task']; ?>" />
<input type="hidden" name="filter_order" value="" />
<input type="hidden" name="filter_order_Dir" value="" />
<input type="hidden" name="limitstart" value="0" />
</form>

resultado: http://www.gasoilnet.com.br/os-produtos ... curos.html
Elaine
Novato
Mensagens: 3
Registrado em: 16 Abr 2009, 23:06

Re: Personalizar lista de artigos

Mensagem por Elaine »

Mãos a obra então! Vou fazer isso!
Valeu pela ajuda!
rubens
Novato
Mensagens: 5
Registrado em: 29 Jun 2009, 11:58

Re: Personalizar lista de artigos

Mensagem por rubens »

Bom dia meus caros, estou tentando colocar imagens após este código:
<td>
<a href="<?php echo $item->link; ?>"><?php echo $item->title; ?></a>
<?php echo JHTML::_('icon.edit', $item, $this->params, $this->access) ?>
<?php echo JHTML::_('image', 'images/stories/images2' . '/'.$this->content->sv1, JText::_( '' ), array('align' => 'middle')); ?>
<?php echo JHTML::_('image', 'images/stories/images2' . '/'.$item->content->sv2, JText::_( '' ), array('align' => 'middle')); ?>
<?php echo JHTML::_('image', 'images/stories/images2' . '/'.$item->sv3, JText::_( '' ), array('align' => 'middle')); ?>
<?php echo JHTML::_('image', 'images/stories/images2' . '/'.$item->sv4, JText::_( '' ), array('align' => 'middle')); ?>
</td>

Testei destas duas formas, só que o nome do arquivo gravado no campo da tabela não aparece no $this ou $item, gostaria ede saber onde carrego estes campos da tabela pra que eles possam ser exibidos e carregada a imagem respectiva?
Avatar do usuário
wmfelipe
Joomleiro
Mensagens: 407
Registrado em: 02 Fev 2009, 13:40
Contato:

Re: Personalizar lista de artigos

Mensagem por wmfelipe »

antes de chegar no template (default.php) variaveis são criadas no view.html.php... se estiver no view.html.php estará disponível no default.php
rubens
Novato
Mensagens: 5
Registrado em: 29 Jun 2009, 11:58

Re: Personalizar lista de artigos

Mensagem por rubens »

Boa tarde Felipe, vlw a ajuda, mais não estou conseguindo declarar estes campos, estou tentando lista artigos e colocar imagens ao lado dos artigos que estarão na lista... se eu informar o caminho manualmente a imagem é inserida. Se puder mandar um exemplo de como declarar eu te agradeço.
Avatar do usuário
wmfelipe
Joomleiro
Mensagens: 407
Registrado em: 02 Fev 2009, 13:40
Contato:

Re: Personalizar lista de artigos

Mensagem por wmfelipe »

será a mesma imagem para todos ou dependendo do artigo será uma imagem diferente? Se sim, qual será o critério?
rubens
Novato
Mensagens: 5
Registrado em: 29 Jun 2009, 11:58

Re: Personalizar lista de artigos

Mensagem por rubens »

Na realidade seria apenas pra carregar o nome da imagem (imagem.png) para completar o caminho e exibir a imagem.
Avatar do usuário
wmfelipe
Joomleiro
Mensagens: 407
Registrado em: 02 Fev 2009, 13:40
Contato:

Re: Personalizar lista de artigos

Mensagem por wmfelipe »

hum... vamos ver então o que está sendo retornado pelo método:

Código: Selecionar todos

var_dump(JHTML::_('image', 'images/stories/images2' . '/'.$this->content->sv1, JText::_( '' ), array('align' => 'middle'))); die();
dessa forma vai dá pra ti saber o que o método _() está retornando, e de acordo com o retorno já será possível saber o que está acontecendo de errado (se não está encontrando a imagem, ou está no diretório errado, etc)...

abraço ;)
Responder