17
set

Mostrando os últimos produtos na página inicial do Magento

Olá a todos!


Hoje vou explicar como colocar uma listagem de produtos na página inicial da sua loja Magento.


O primeiro passo é configurar a página inicial para mostrar esse listagem, para isso siga os passos:


- Entre na sua área administrativa

- No menu entre em “CMS” e depois “Gerenciar Páginas”

- Clique na página inicial da sua loja


Na aba “Informações Gerais”, no campo “Conteúdo” coloque o seguinte código:


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


Agora na aba “Design Personalizado” coloque o seguinte xml:


   
 right.reports.product.viewed right.reports.product.compared 

right.reports.product.viewed
right.reports.product.compared


Dessa forma estamos falando para o Magento utilizar a página “catalog/product/new.phtml” na página inicial.


Apenas com isso já temos os produtos sendo mostrados na home, porém está mal formatado e com alguns problemas, o que precisamos fazer é editar o arquivo que está sendo mostrado.


Abra o arquivo “/app/design/frontend/default/default/template/catalog/product/new.phtml”, lá você consegue editar o layout da sua home.


Deixei meu arquivo da seguinte forma:


* Dentro das aspas o editor de texto modificou as tags PHP, é preciso corrigí-las.


<?php if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>

Produtos Novos

<?php $_collectionSize = $_products->getSize() ?> <?php $i=0; foreach ($_products as $_product): ?> <?php if ($i++%2==0): ?> <?php endif ?> <?php if ($i%2==0 && $i!=$_collectionSize): ?> <?php endif ?> <?php endforeach ?> <?php for($i;$i%2!=0;$i++): ?> <?php endfor ?> <?php if ($i%2==0): ?> <?php endif ?>
<?php echo $this->htmlEscape($_product->getName()) ?>

<?php echo $this->htmlEscape($_product->getName()) ?> <?php echo $this->getPriceHtml($_product, true) ?> <?php if($_product->isSaleable()): ?> <?php else: ?>

<?php echo $this->__('Out of stock') ?>
<?php endif; ?>
<?php endif; ?>

Fazendo tudo isso minha home ficou assim: http://loja.pteixeira.com.br


Dica:

Para que os produtos sejam mostrados como últimos você precisa colocar a data de cadastro no campo “Set Product as New from Date” ou “Mostrar produto como novo a partir de”.


Espero ter ajudado!


Abraços!

62 comentários para “Mostrando os últimos produtos na página inicial do Magento”

  1. eri disse:

    Oi Pedro, estava precisando deste exemplo, entretanto na minha página inicial não apareceu nada, será que errei em algum lugar?

    Responder

  2. eri disse:

    deu certo, não tinha prestado atenção na dica.

    Valeu

    Responder

  3. Pedro Teixeira disse:

    Que bom Eri, se precisar de ajuda é só falar.

    Abraço!

    Responder

  4. Ricardo disse:

    Ola amigo,
    Segui exatamente os passos mas nao ficou igual.
    Vide:http://www.cebinformatica.com.br/loja/

    Responder

  5. Pedro Teixeira disse:

    Ricardo,

    Pelo que vi sua loja só tem dois produtos, e para que eles fiquem na home é necessário configurar o campo "Set Product as New from Date" ou "Mostrar produto como novo a partir de" de cada produto.

    Mas de resto parece estar ok.

    O layout está diferente pois no meu eu modifiquei os estilos.

    Abraço!

    Responder

  6. Sergio Araujo disse:

    Ola Pedro, blz…

    Parabens pelo blog, as informações aqui contidas são de grande avalia.

    Bem gostaria de tirar uma duvida com vc, estou com o magento instalado na minha maquina, localmente e qdo estou cadastrando o produto e vou informar a imagem paradepois fazer o uploaddo mesmo pardepois ver na loja ela nunca aparece. O que pode ser, sera que estou fazendo algo errado?

    Abraços e parabens

    Responder

  7. Pedro Teixeira disse:

    Olá Sergio Araujo,

    Não entendi, você seleciona a imagem e clica em "Carregar Arquivos" ele aparece no admin mas não na loja?

    Abraço!

    Responder

  8. Sergio Araujo disse:

    Ola Pedro, blz

    Obrigado pela atenção…

    Eu seleciono a imagem, clico em Carregar Arquivos e nem no Admin ela aparece.

    Sera que a versão do magento que estou usando esta com algum problema, pois segui inclusive um tutorial explicando como fazer a inclusão de produtos.

    Abraços

    Responder

  9. Sergio Araujo disse:

    Ola Pedro, blz

    Bom para facilitar o entendimento do meu problema resolvi upar as imagens confore segue abaixo:

    1a imagem ==> Entrando na área da imagem do produto;

    link-> http://img682.imageshack.us/img682/2653/imgantesdeuparimagemdop.jpg

    2a imagem ==> Selecionando a image do produto;

    link-> http://img18.imageshack.us/img18/8435/imgprodutoselecionado.jpg

    3a imagem ==> Após selecionar a imagem cliquei o Upload File

    link-> http://img510.imageshack.us/img510/5751/imgprodutoselecionadoem.jpg

    qquer duvida me envie um e-mail

    Araços

    Responder

  10. Pedro Teixeira disse:

    Sergio,

    Não sei o que pode ser, talvez permissão de escrita nas pastas, não sei.

    Acho que seria interessante refazer a instalação.

    Abraço.

    Responder

  11. Sergio Araujo disse:

    Ola Pedro, blz…

    Bem refiz a instalação do magento aki na minha maquina, mas o caso da imagem do produto continuou da mesma forma, sem aparecer no ADM e na loja.

    Bem vou colocar algumas coisas para vc:

    1) Estou utilizando o WindowsXP IE8
    2) Estou usando o Xampp como servidor em minha maquina
    3) mesmo em local tenho que dar essa permissão que vc diz?

    Agora par qquer efeito estou transferindo o magento para fazer a instalação no meu provedor, vou testar por la para ver se funciona, como te falei ainda sou novo no magento.

    Por enquanto é isso ok…

    Abraços

    Responder

  12. Pedro Teixeira disse:

    Sergio,

    Precisa dar a permissão de escrita sendo local ou servidor.

    Leia a documentação do Magento para instalação e mude a permissão das pastas definidas no documento.

    Abraço!

    Responder

  13. Sergio Araujo disse:

    Ola Pedro, blz…

    Bem felizmente graças ao seu alerta consegui fazer a imagem do produto aparecer tanto no ADM como na Loja.

    Realmente depois de ler a documentação e notar que as pastas Media e Var precisavam ter permissão de escrita, realmente ai sim funcionou.

    Mas eu acho que deve ter mais pastas para terem essa permissão, pois em algum lugar eu vi isso, so não lembro onde.

    Obrigado pelo alerta,

    Abraços

    Responder

  14. Sergio Araujo disse:

    Ola Pedro, blz…

    Bem felizmente graças ao seu alerta consegui fazer a imagem do produto aparecer tanto no ADM como na Loja.

    Realmente depois de ler a documentação e notar que as pastas Media e Var precisavam ter permissão de escrita, realmente ai sim funcionou.

    Mas eu acho que deve ter mais pastas para terem essa permissão, pois em algum lugar eu vi isso, so não lembro onde.

    Obrigado pelo alerta,

    Abraços

    Responder

  15. Pedro Teixeira disse:

    Sergio,

    Para funcionar o Magento Connect precisa dar mais algumas permissões. Dê uma olhada no Wiki:

    http://www.magentocommerce.com/wiki/groups/227/magento_connect

    Abraço.

    Responder

  16. GUSTAVO DA CRUZ XAVIER CAVALCANTE disse:

    Putz galera, me ajuda ae… eu fiz certinho ai, mais não deu certo não..
    outra coisa, é que tenho o mesmo problema do Pedro, não sei se ele resolveu, mas, minhas imagens do produto só aparecem no admin, não na loja.
    qualquer coisa, me ajudem, http://www.motoshopgaragem.cruzxavier.com.br

    Responder

  17. Pedro Teixeira disse:

    Gustavo,

    Quanto aos produtos na página inicial dê uma olhada nas aspas, aqui no meu blog ele quebrou as aspas.

    Quanto as imagens tem que pesquisar mais a fundo.

    Abraço.

    Responder

  18. gustavo xavier disse:

    valeu.

    Responder

  19. Jonathan disse:

    Parabéns por sua dica. Estou com um pequeno problema, fiz todo procedimento acima indicado, mas no final ele me mostra apenas um produto na pagina incial, ja verifiquei as datas e esta tudo certo. Alguma idéia?

    Responder

  20. Pedro Teixeira disse:

    Olá Jonathan

    Você checou os campos "Tornar novo apartir de" dos produtos?

    Se sim, tente mudar as funções "for" na linha 16 e 19 do arquivo:

    /app/design/frontend/default/default/template/catalog/product/new.phtml

    Abraços!

    Responder

  21. Ruben Bareiro disse:

    Bom dia Pedro.

    Cara, eu já tentei de tudo e não consigo colocar nada na página inicial.
    Coloco os códigos e simplesmente não aparece nada, nem erro. Vc tem alguma idéia do que pode ser?

    Valeu

    Responder

  22. Pedro Teixeira disse:

    Ruben,

    Você checou se o campo "Tornar novo apartir de" dos produtos está preenchido? E com uma data menor do que a de hoje?

    Quando for copiar os códigos que coloquei aqui, verifique as aspas, já que o WYSIWYG do meu blog quebrou algumas.

    Abraço!

    Responder

  23. Ruben Bareiro disse:

    Pedro,

    O meu está como "Tema personalizado a partir de", procede ou está errado?
    Coloquei a data de ontem e nada. Mas nem erro;

    Neste link

    http://www.greenbikeshop.com.br

    Responder

  24. Pedro Teixeira disse:

    Não Ruben, é a "Set Product as New from Date" ou "Tornar novo apartir de" na aba "Geral".

    Responder

  25. Ruben Bareiro disse:

    Pedro,

    Vc é o cara mesmo! PHD total!!!

    Valeu, funcionou perfeitamente!

    Mais uma vez, obrigado

    Responder

  26. Pedro Teixeira disse:

    Heheheh, valeu Ruben!

    Responder

  27. Ruben Bareiro disse:

    Pedro,

    Olha eu aqui novamente. Cara, como te falei tudo apareceu legal. Mas pq está aparecendo 2 vezes? Chequei várias vezes os códigos e está perfeito. O que acontece, tem idéia?
    dá uma conferida: http://www.greenbikeshop.com.br

    Responder

  28. Pedro Teixeira disse:

    Olá Ruben,

    Você disse que está aparecendo duas vezes na página inicial?

    Para mim está aparecendo tudo certo. Tente atualizar o cache do Magento e o cache do seu navegador.

    Abraço!

    Responder

  29. Ronan disse:

    Onde vc conseguiu aquele zoom com barra na foto do produto?

    Responder

  30. Pedro Teixeira disse:

    É padrão do Magento, nos templates que o acompanham.

    Abraços!

    Responder

  31. Rodrigo disse:

    Ótimo me ajudou muito, gostaria de saber como faço pra inverter a exibição dos produtos começar com o último lançamento indo para o final da lista…

    Responder

    Pedro Teixeira respondeu:

    @Rodrigo,

    Precisa dar uma pesquisada no código da pagina “/app/design/frontend/default/default/template/catalog/product/new.phtml”, é lá que é gerada a lista de produtos.

    Eu não sei exatamante o que fazer, mas se você pesquisar com certeza acha algo.

    Abraço!

    Responder

    Rodrigo respondeu:

    @Pedro Teixeira, resolvi alterando as datas; tinha pensado em mudar no mysql a lista mas achei complicado então vamos pelo modo mais fácil…
    Agora estou a procura de um módulo onde o visitante possa comentar no produto

    Responder

    Pedro Teixeira respondeu:

    @Rodrigo,

    Legal, então está funcionando?

    Quanto ao módulo de comentário não sei onde você consegue encontrar.

    Abraço!

    Responder

    Rodrigo respondeu:

    @Pedro Teixeira, está funcionando bem alterei para exibição para 6 produtos 3 x 2 e redimencionei o tamanho de exibição…
    Vlw

    Responder

  32. Felipe Rossi disse:

    Olá Pedro, outra vez parabéns pelo blog, você tem as respostas de todas as minhas perguntas! Fantástico!

    Fiz tudo o que foi dito, apenas não consegui encontrar nenhuma aspas quebrada no último código! Testei antes de depois de alterar o arquivo “new.phtml”. Antes deu bagunçado, mas depois de alterar só aparece 1 produto! Já atualizei o cache e alterei as funções “for”. Resumindo, fiz tudo o que você já comentou aqui e nada! Outra coisa é que como já comentado acima, também me apareceram 2 barras de produtos. Já atualizei o cache tanto do magento como do browser, até testei em outro computador! Mesma coisa! Alguma idéia?

    Desde já obrigado!

    Responder

  33. Felipe Rossi disse:

    Pedrão,

    Consegui arrumar o lance das duas lista de produtos voltando o XML para o padrão do Sample Data. Agora só falta o motivo pelo qual só aparece 1 produto!

    abraço

    Responder

    Pedro Teixeira respondeu:

    @Felipe Rossi,

    Está tudo funcionando pelo que entendi, estou certo?

    A questão de só mostrar um produto, acho que pode ser o campo “Setar como novo a paratir de” dos produtos.

    Ele só será mostrado no home se esse campo estiver preenchido com uma data menor que a de hoje.

    Tenta e passa aqui para falar como ficou.

    Abraço!

    Responder

  34. Felipe Rossi disse:

    Fala Pedrão,

    Tá tudo perfeitinho, todos os produtos estão como novos com uma data anterior a data de hoje, até ai sem problemas.

    Sem alterar o arquivo “new.phtml”, aparecem vários produtos no Home, todos desordenados… ok, agora quando eu altero o arquivo “new.phtml” para o código ai em cima, ele só parece 1 produto! Rsss… comédia neh?

    abraço,

    Felipe Rossi

    Responder

    Pedro Teixeira respondeu:

    @Felipe Rossi,

    Uma boa pergunta, tem que ir vendo linha por linha do código para achar qual o problema.

    Abraço!

    Responder

  35. rovere disse:

    Pedro, onde vc fala

    “* Dentro das aspas o editor de texto modificou as tags PHP, é preciso corrigí-las.”

    Quais as tags do seu cod que precisam ser alteradas?

    Responder

    Pedro Teixeira respondeu:

    @rovere,

    Por exemplo, aqui:

    Deveria ser isso:

    Entendeu?

    Abraço!

    Responder

    rovere respondeu:

    @Pedro Teixeira, oi pedro, na verdade ñ apareceu nada apos vc postar “deveria ser isso”

    Responder

    Pedro Teixeira respondeu:

    @rovere,

    Desculpe, cortou.

    Isso:

    href=”%3C?php%20echo%20$_product-%3EgetProductUrl

    Deveria ser isso:

    href=”< ?php echo $_product->getProductUrl

    Conseguiu ver?

    Responder

  36. Cris disse:

    Olá Pedro,

    To tentando colocar os produtos na pagina principal do site, mas to apanhando… rs… é facil configurar uma nova index da forma que eu quero? Existe algum tutorial onde possa seguir??

    Mais uma dúvida, é possível utilizar no Magento um valor do produto diferenciado para pagamento através de boleto? Tipo com desconto para pagto com Boleto?

    A ultima duvida é bem interessante, é possivel esconder os preços da mercadoria e só serem mostradas após o cadastro do cliente? como se funcionasse para um B2B que mostra os preços só após a revenda se cadastrar?

    Obrigada mais uma vez…

    Responder

    Pedro Teixeira respondeu:

    @Cris,

    - Como você quer a index? Não é do jeito que fiz aqui?

    - Precisa pesquisar, mas acho que é possível sim.

    - Sim, você pode usar classe de preço diferente para cada tipo de usuário, nunca fiz, mas sei que é possível.

    Abraço!

    Responder

    Cris respondeu:

    @Pedro Teixeira, Ola Pedro, bom dia!

    Por acaso vc conhece algum modulo de Theme gratuito que funcione perfeito para a versao 1.4.0.1 do Magento? Tentei alguns free que achei na Net, mas hora não funciona 100% no firefox e no I.E.8 deixando a desejar…

    Desde já agradeço a sua atenção… Ah!! votei na sua enquete… ;)

    Responder

    Pedro Teixeira respondeu:

    @Cris,

    Você já deu uma olhada no Connect?

    http://www.magentocommerce.com/magento-connect/filter/all/design

    Abraço!

    Responder

    Cris respondeu:

    @Pedro Teixeira, Olá Pedro,

    Agradeço de coração mais uma vez a sua atenção…

    Já pesquisei sim neste endereço acima, achei alguns, mas como lhe disse, alguns nao funcionam 100% na ultima versao do Magento e os que funcionam dao incompatibilidade com o navegador… Nao sei se posso postar aqui a minha URL pra vc… Conhece alguem que possa personalizar um modulo de temas?

    Mais uma vez agradeço a paciencia…

    Grata!

    Responder

    Pedro Teixeira respondeu:

    @Cris,

    Se você postar na comunidade que quer um desenvolvedor de temas para Magento com certeza irá encontrar muita gente.

    Poste lá, irá achar ajuda sem dúvida.

    Se quiser postar sua URL aqui para ver se alguém se interessa, fique a vontade.

    Abraço!

  37. Olá Pedro,
    Primeiramente, obrigado pela resposta no twitter! Segue abaixo minhas 2 dúvidas.
    1. Como faço para colocar meu banner no head como em sua loja exemplo (home_main_banner.gif) com um link.
    2. Em minha loja, adicionei o LiveChat presente no magento connect, no entanto gostaria de adicionar uma borda como nos outros itens.. há como fazer isso?

    São dúvidas até consideradas ‘simples demais’ mas eu sou bem iniciante, e gosto de fazer as coisas fuçando! hehe.
    Obrigado.

    Responder

    Pedro Teixeira respondeu:

    @Guilherme Costa,

    Vamos lá:

    1 – Você pode alterar a home pelo CMS no admin do Magento usando código HTML.

    2 – Acho que você vai precisar alterar o CSS para colocar essa borda.

    Abraço!

    Responder

    Guilherme Costa respondeu:

    @Pedro Teixeira,

    Olá Pedro,
    O css a ser alterado seria o boxes.css? Eu não consigo achar esse ‘safado’ hehe!
    Grato

    Responder

    Pedro Teixeira respondeu:

    @Guilherme Costa,

    Não sei exatamante qual CSS, possivelmente você terá de criar as classes para esse novo plugin.

    Abraço!

    Responder

  38. Olá Pedro,
    Acessei hoje o seu blog pela primeira vez e fiquei encantado com o conteúdo. Parabens!

    Tenho uma dúvida de principiante, como faço para abrir para editar o arquivo:
    “/app/design/frontend/default/default/template/catalog/product/new.phtml”,

    Muito sucesso com o seu trabalho.
    Antonio Carlos

    Responder

    Pedro Teixeira respondeu:

    @Antonio Carlos,

    Use um editor HTML e PHP, indico o Notepad++.

    Sucesso para sua loja.

    Abraço!

    Responder

  39. Leandro Santos disse:

    Olá Pedro, vi sua entrevista na TIDigital, sobre a grande ferramenta magento, estou iniciando agora projetos com essa grande ferramenta, você poderia da uma dica para iniciar a criação de template para magento.

    Responder

    Pedro Teixeira respondeu:

    @Leandro Santos,

    Você consegue muita informação pelo site do Magento:

    http://www.magentocommerce.com/design_guide

    E em todos os outros blogs que estão pela internet.

    Se você tiver alguma dúvida específica posso tentar te ajudar também.

    Abraço!

    Responder

  40. Edson disse:

    Olá Pedro, estou fazendo um teste de loja virtual e estou com problemas, utilizei um tema padrão da instalação do Magento, o “modern”, meu problema é quando clico no produto, ele aparece com um layout estranho, fica tudo em uma coluna apenas, e não estou conseguindo alterar isso, preciso alterar o codigo para o produto ficar como no exemplo de loja que esta nesse tutorial.

    Att.
    Edson

    Responder

    Pedro Teixeira respondeu:

    @Edson,

    O tutorial que tem nesse post é para criar uma home com os últimos produtos.

    A página de cada produto é uma característica de cada tema, não sei o que pode ser.

    Abraço!

    Responder

    Edson respondeu:

    @Pedro Teixeira, Desculpa minha falta de conhecimento, mas o tema tem algum arquivo que eu possa alterar e fazer isso?
    Tentei comparar os do tema atual com os do tema default que aparece da forma que gostaria, mão identifiquei o arquivo correto.

    Abraços
    E obrigado por responder minha pergunta.

    Responder

    Pedro Teixeira respondeu:

    @Edson,

    Os arquivos de template ficam dentro da pasta app/design

    Abraço!

    Responder

Deixe um comentário