Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Page 2 of 2
Colocar produtos na frente. 
 
Bruno Morejon
Sr. Member
 
Avatar
Total Posts:  83
Joined:  2009-06-05
 

hahah desculpa ai Galera!

http://www.magentocommerce.com/wiki/groups/248/display_products_on_home_page

 
Magento Community Magento Community
Magento Community
Magento Community
 
Alexandre MP
Member
 
Avatar
Total Posts:  41
Joined:  2009-06-24
 

Felipe!!!! Sou seu fã cara, mas não precisei criar outro phtml, criei uma subcategoria para a root, deixei desabilitada, porém criei uma subcategoria para ela e deixei habilitada, é assim que realizo meus testes XD

Vlw a dica cara, tava me estressando aqui já, dias das crianças por perto e nem fiz uma newsletter ainda.

Se bem que pelo Magento ainda não funciona não é?

 
Magento Community Magento Community
Magento Community
Magento Community
 
juliobianco
Jr. Member
 
Total Posts:  1
Joined:  2011-04-17
 

Muito Bom !!!

 
Magento Community Magento Community
Magento Community
Magento Community
 
telin
Jr. Member
 
Total Posts:  1
Joined:  2011-03-28
 

ai galera tava com o mesmo probrema e coloquei o codigo que esta ai e funcionol muito bem obrigado

 
Magento Community Magento Community
Magento Community
Magento Community
 
binhofa
Jr. Member
 
Total Posts:  2
Joined:  2012-04-07
 

Reativando o post...rsss

Desculpe a minha ignorância, mas Felipe, na listhome.phtml, quais são as linhas de código que mostram os ítens por página ou ordenação? Fiz os testes aqui mas nao consegui.

Obrigado e fico no aguardo.

 
Magento Community Magento Community
Magento Community
Magento Community
 
binhofa
Jr. Member
 
Total Posts:  2
Joined:  2012-04-07
 

Olá a todos!

Desculpe a minha ignorância, mas Felipe, na listhome.phtml, quais são as linhas de código que mostram os ítens por página ou ordenação? Fiz os testes aqui mas nao consegui.

Obrigado e fico no aguardo.

Felipe Santana - 10 September 2009 11:07 AM

Galera juntei várias dicas ai com um pouco de criatividade pra conseguir colocar meus produtos na Home de maneira simples.

Primeiro você coloca este código no conteúdo de sua home:

{{block type="catalog/product_list" category_id="1" template="catalog/product/listhome.phtml"}}

a Categoria ID=1 é uma categoria que criei com o nome de “Vitrine” e está inativa, toda vez que quero colocar um produto na vitrine quando cadastro um produto e vou escolher a categoria dele, tb coloco ele na categoria “Vitrine” que será a categoria mostrada na home.

Reparem que ele busca o template da listhome.phtml e essa é a diferença do método da galera, vá até a pasta

app/design/frontend/default/seu template/template/catalog/product

e você encontrará o arquivo list.phtml, faça uma cópia dele e renomeie para listhome.phtml, agora é só vc modificar tirar aqueles menus de ordenar e mostrar itens por página. Para mudar a possição dos itens na home vá em gerenciar categoria, escolha a categoria “Vitrine” e organize os produtos colocando numeração neles.

Bom espero ter ajudado!

 
Magento Community Magento Community
Magento Community
Magento Community
 
PatyLopes
Jr. Member
 
Total Posts:  3
Joined:  2012-08-09
 

Ainda estou aprendendo Magento, mas obrigada pessoal pelas dicas.

 
Magento Community Magento Community
Magento Community
Magento Community
 
RIGELCASTRO
Jr. Member
 
Total Posts:  4
Joined:  2012-08-03
 

Galera,

Uma das primeira coisas que os usuários comecam customizar no Magento é justamente a exibição de produtos na home. Vou colocar alguns code que já foram disponibilizados por alguns colegas e outro (raridade que encontrei na net) que Exibe os Produtos Aleatórios personalizando a quantidade de produtos e número de colunas mostrados .

Novos Produtos

{{block type="catalog/product_new" name="home.catalog.product.new" alias="product_new" template="catalog/product/new.phtml"}}

Produtos Mais Vistos

{{block type="mostviewed/list" name="home.mostviewed.list" alias="product_homepage" template="catalog/product/list.phtml"}}

Mostra os Produtos de um Categoria Particular

{{block type="catalog/product_list" category_id="<Category-ID>" template="catalog/product/list.phtml"}}

Mostra Produtos Aleatórios

{{block type="catalog/product_list_random" template="catalog/product/list.phtml"}}

Com 4 colunas

{{block type="catalog/product_list_random" template="catalog/product/list.phtml" column_count="4"}}

Para quem gostaria de limitar o número de produtos exibidos aleatoriamente basta editar o arquivo:

app/code/core/Mage/Catalog/Block/Product/List/Random.php

que se encontra assim:

protected function _getProductCollection()
{
if (is_null($this->_productCollection)) {
$collection 
Mage::getResourceModel('catalog/product_collection');
Mage::getModel('catalog/layer')->prepareProductCollection($collection);
$collection->getSelect()->order('rand()');
$collection->addStoreFilter();
$numProducts $this->getNumProducts() ? $this->getNumProducts() : 0;
$collection->setPage(1$numProducts);
$this->_productCollection $collection;
}
return $this->_productCollection;
}

e alterá-lo para:

protected function _getProductCollection()
{
if (is_null($this->_productCollection)) {
$collection 
Mage::getResourceModel('catalog/product_collection');
Mage::getModel('catalog/layer')->prepareProductCollection($collection);
$collection->getSelect()->order('rand()');
$collection->addStoreFilter();
$numProducts 3// SETAR NUMERO DE PRODUTOS AQUI
$collection->setPage(1$numProducts);
//$this->_productCollection = $collection;
}
return $collection;
}

Fonte: http://blog.ecommercesoftwaresolutionsonline.com/archives/539/displaying-new-most-viewed-random-products-in-cms-pages.html

 
Magento Community Magento Community
Magento Community
Magento Community
 
checkoutmagento
Member
 
Avatar
Total Posts:  48
Joined:  2013-02-04
 

Galera,

um cuidado muito importante que deve ser tomado e nem todos estão percebendo é o de NUNCA modificar os arquivos core.

A solução do Felipe Santana é adequada exatamente por isso: ele sugere fazer uma cópia do original, renomeá-lo e mudar o apontamento no XML. É exatamente isso que o Magento recomenda nos guidelines.

Se tiverem o hábito de atualizar os arquivos core, só posso desejar boa sorte quando precisarem atualizar o Magento ou até mesmo instalar um tema ou uma extensão.

OK? Muito cuidado!

Para quem quer mais profundidade sobre criação e customização de temas para Magento, sugiro o seguinte guia:
http://www.checkoutexpressomagento.com.br/template-magento/

[]’s

 
Magento Community Magento Community
Magento Community
Magento Community
 
RIGELCASTRO
Jr. Member
 
Total Posts:  4
Joined:  2012-08-03
 
checkoutmagento - 01 April 2013 11:00 AM

Galera,

um cuidado muito importante que deve ser tomado e nem todos estão percebendo é o de NUNCA modificar os arquivos core.

A solução do Felipe Santana é adequada exatamente por isso: ele sugere fazer uma cópia do original, renomeá-lo e mudar o apontamento no XML. É exatamente isso que o Magento recomenda nos guidelines.

Se tiverem o hábito de atualizar os arquivos core, só posso desejar boa sorte quando precisarem atualizar o Magento ou até mesmo instalar um tema ou uma extensão.

OK? Muito cuidado!

Para quem quer mais profundidade sobre criação e customização de temas para Magento, sugiro o seguinte guia:
http://www.checkoutexpressomagento.com.br/template-magento/


[]’s

Não recomenda mas, dificilmente alguém dá uma solução real para o que os amigos buscam. Eu sugeri que alterassem um arquivo no CORE, pois quando chamamos na home esses milhares de código que a galera coloca aí não funcionam.
Este exemplo mesmo “não funciona” na versão que eu tô usando 1.7.0.2.

{{block type="catalog/product_list_random" template="catalog/product/list.phtml" column_count="4"}}
Funciona sim, mas funciona da seguinte maneira:
Lista TODOS os produtos da loja na home (aleatório), mas esta “tag” column_count="4" não é passada, ou seja, ignora o número de colunas que você seta com este código. E se você quiser limitar o número de produtos colocando num_limit="6”, ou seja, listar SOMENTE 6 produtos na home, com certeza, não funcionará e continuará listando TODOS os produtos da loja na home. Por este motivo eu mostrei uma solução para a galera, que não causa nenhum problema a loja (o arquivo alterado será substituído caso você atualize a versão do Magento).
 
Magento Community Magento Community
Magento Community
Magento Community
 
RIGELCASTRO
Jr. Member
 
Total Posts:  4
Joined:  2012-08-03
 

Alguns meses atrás eu sugeri para a galera uma alteração num arquivo do CORE para quem gostaria de limitar o número de produtos aleatório listados na home.
Agora vou postar uma outra solução que encontrei na net (pesquisando muuuuuuuuitoo) para não alterar o arquivo do CORE.

Quem dera quando (instalamos o Magento e) vamos mostrar os produtos de nossa loja na home fosse do jeito que queiramos. Por exemplo, seria tão simples se ao colocar na página home no CMS os códigos seguintes e funcionassem redondinho somente com os arquivos base que acompanham o Magento na instalação inicial (list.phtml)

Vamos fazer de conta que queiramos colocar em nossa vitrine os produtos aleatórios, mas separados por categorias. Quero mais ainda, separados por categorias e listar 6 produtos da categoria 1, depois 3 da categoria 2 e depois listar também 3 produtos da categoria 3.  Se você buscar na net códigos para o seu desejo, vai encontrar o seguinte (ou variações):

{{block type="catalog/product_list_random" category_id="ID-DA-CATEGORIA1" template="catalog/product/list_cat1.phtml"}}
{{block type="catalog/product_list_random" category_id="ID-DA-CATEGORIA2" template="catalog/product/list_cat2.phtml"}}
{{block type="catalog/product_list_random" category_id="ID-DA-CATEGORIA3" template="catalog/product/list_cat3.phtml"}}
Se você é iniciante (como eu) e está com os arquivos do Magento básico (list.phtml) sem customização. Pega o arquivo list.phtml e faz 3 cópias renomeando-os list_cat1.phtml , list_cat2.phtml e list_cat2.phtml.  Daí pega os 3 códigos dados anteriormente cola na home (CMS), salva ... depois apaga a cache e dá um F5 para vê o que aconteceu. O que você verá é TODOS os produtos da sua loja listados repetidos 3 vezes na vitrine e tudo misturado (não estarão separados por categoria), a minha versão do Magento 1.7.0.2.

Procurando na net, encontrei um list.phtml que combinado com o código seguinte executa EXATAMENTE o que queremos.

{{block type="catalog/product_list" category_id="ID_CATEGORIA" template="catalog/product/list_aleatorio.phtml"}}

Segue o código do list_aleatorio.phtml

<?php
$_productCollection
=$this->getLoadedProductCollection();
$categoryID $this->category_id;
//$categoryID = $this->getCategoryId();
if($categoryID){
  $category 
= new Mage_Catalog_Model_Category();
  
$category->load($categoryID); // this is category id
  
$collection $category->getProductCollection();
} else{
  $collection 
Mage::getResourceModel('catalog/product_collection');
}
Mage
::getModel('catalog/layer')->prepareProductCollection($collection);
$collection->getSelect()->order('rand()');
$collection->addStoreFilter();
$quant_produtos 6;                                                                //QUANTIDADE DE PRODUTOS LISTADOS
$numProducts $this->getNumProducts() ? $this->getNumProducts() : $quant_produtos;
$collection->setPage(1$numProducts)->load();
$_productCollection $this->_productCollection $collection;
?>

<?php
    $_productCollection
=$this->getLoadedProductCollection();
    
$_helper $this->helper('catalog/output');
?>
<?php 
if(!$_productCollection->count()): ?>
<class="note-msg"><?php echo $this->__('There are no products matching the selection.'?></p>
<?php else: ?>
<div class="category-products">
    <!--
<?php echo $this->getToolbarHtml() ?>-->
    
<?php // List mode ?>
    
<?php if($this->getMode()!='grid'): ?>
    <?php $_iterator 
0?>
    
<ol class="products-list" id="products-list">
    
<?php foreach ($_productCollection as $_product): ?>
        
<li class="item<?php if( ++$_iterator == sizeof($_productCollection) ): ?> last<?php endif; ?>">
            
<?php // Product Image ?>
            
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
            
<?php // Product description ?>
            
<div class="product-shop">
                <
div class="f-fix">
                    
<?php $_productNameStripped $this->stripTags($_product->getName(), nulltrue); ?>
                    
<h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped; ?>"><?php echo $_helper->productAttribute($_product$_product->getName() , 'name'); ?></a></h2>
                    
<?php if($_product->getRatingSummary()): ?>
                    <?php 
echo $this->getReviewsSummaryHtml($_product?>
                    <?php 
endif; ?>
                    <?php 
echo $this->getPriceHtml($_producttrue?>
                    <?php 
if($_product->isSaleable()): ?>
                        
<p><button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart'?></span></span></button></p>
                    
<?php else: ?>
                        
<class="availability out-of-stock"><span><?php echo $this->__('Out of stock'?></span></p>
                    
<?php endif; ?>
                    
<div class="desc std">
                        
<?php echo $_helper->productAttribute($_product$_product->getShortDescription(), 'short_description'?>
                        
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped ?>" class="link-learn"><?php echo $this->__('Learn More'?></a>
                    </
div>
                    <
ul class="add-to-links">
                        
<?php if ($this->helper('wishlist')->isAllow()) : ?>
                            
<li><a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" class="link-wishlist"><?php echo $this->__('Add to Wishlist'?></a></li>
                        
<?php endif; ?>
                        <?php 
if($_compareUrl=$this->getAddToCompareUrl($_product)): ?>
                            
<li><span class="separator">|</span> <a href="<?php echo $_compareUrl ?>" class="link-compare"><?php echo $this->__('Add to Compare'?></a></li>
                        
<?php endif; ?>
                    
</ul>
                </
div>
            </
div>
        </
li>
    
<?php endforeach; ?>
    
</ol>
    <
script type="text/javascript">decorateList('products-list''none-recursive')</script>

    <?php 
else: ?>

    <?php 
// Grid Mode ?>

    
<?php $_collectionSize $_productCollection->count() ?>
    <?php $_columnCount 
$this->getColumnCount(); ?>
    <?php $i
=0; foreach ($_productCollection as $_product): ?>
        <?php 
if ($i++%$_columnCount==0): ?>
        
<ul class="products-grid">
        
<?php endif ?>
            
<li class="item<?php if(($i-1)%$_columnCount==0): ?> first<?php elseif($i%$_columnCount==0): ?> last<?php endif; ?>">
                <
a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
                <
h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_helper->productAttribute($_product$_product->getName(), 'name'?></a></h2>
                
<?php if($_product->getRatingSummary()): ?>
                <?php 
echo $this->getReviewsSummaryHtml($_product'short'?>
                <?php 
endif; ?>
                <?php 
echo $this->getPriceHtml($_producttrue?>
                
<div class="actions">
                    
<?php if($_product->isSaleable()): ?>
                        
<button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart'?></span></span></button>
                    
<?php else: ?>
                        
<class="availability out-of-stock"><span><?php echo $this->__('Out of stock'?></span></p>
                    
<?php endif; ?>
                    
<ul class="add-to-links">
                        
<?php if ($this->helper('wishlist')->isAllow()) : ?>
                            
<li><a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" class="link-wishlist"><?php echo $this->__('Add to Wishlist'?></a></li>
                        
<?php endif; ?>
                        <?php 
if($_compareUrl=$this->getAddToCompareUrl($_product)): ?>
                            
<li><span class="separator">|</span> <a href="<?php echo $_compareUrl ?>" class="link-compare"><?php echo $this->__('Add to Compare'?></a></li>
                        
<?php endif; ?>
                    
</ul>
                </
div>
            </
li>
        
<?php if ($i%$_columnCount==|| $i==$_collectionSize): ?>
        
</ul>
        
<?php endif ?>
        <?php 
endforeach ?>
        
<script type="text/javascript">decorateGeneric($$('ul.products-grid'), ['odd','even','first','last'])</script>
    <?php 
endif; ?>

    
<div class="toolbar-bottom">
        <!--
<?php echo $this->getToolbarHtml() ?>-->
    </
div>
</
div>
<?php endif; ?>

Este list_aleatorio.phtml está customizado do theme da base/default, mas você pode alterá-lo para apresentar de acordo com o template da sua loja (botão COMPRAR, Adicionar Lista de Desejos e Comparar).

Espero ajudar algum iniciante do Magento.

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top
Page 2 of 2