Bem vindo ao brockdev.com, não seja tímido compartilhe suas duvidas e conhecimento. :D

Filtro na Home não funciona com produtos Randômicos

Boa tarde pessoal,

Aqui estou eu novamente com mas um pequeno probleminha..rsrs...

Estou usando o seguinte código para exibir os produtos na home(CMS/Conteudo):
{{block type=\"catalog/product_list\" name=\"home.catalog.product.list\" alias=\"products_homepage\" template=\"catalog/product/list.phtml\"}}


E o seguinte para exibir o filtro na home(CMS/Tema):
<reference name=\"left\">
<block type=\"catalog/layer_view\" name=\"catalog.nav\" before=\"banner-lateral-home\" template=\"catalog/layer/view.phtml\"/>
</reference>


O problema é que quando coloco pra aparecer os produtos randômicamente o filtro pára de funcionar.
{{block type=\"catalog/product_list_random\" name=\"home.catalog.product.list\" alias=\"products_homepage\" template=\"catalog/product/list.phtml\"}}


Vocês conhecem alguma solução?
Att.,
Wesley

Comentários

  • Alessandra Moderador Global
    Boa Tarde Wesley!
    O filtro com os produtos rândomicos realmente não funciona e eu acho que não há alguma maneira de fazê-lo funcionar...
    Vou pesquisar sobre o assunto e caso encontre alguma coisa, posto aqui!
  • Oi Alessandra...

    Eu encontrei esse link que explica alguma coisa quanto deixar random direto no list.phtml. Será que mudando direto lá daria certo? Você pode me ajudar pq entendo o básico do básico de php e me perdi todo... segue o link: http://way2discuss.blogspot.com.br/2012 ... lists.html

    Desde já agradeço a sua ajuda...
  • Alessandra Moderador Global
    As formas parecem ser bem simples, basta criar o arquivo e chamar na home.
    Por exemplo, no método 4, você cria o home_list.phtml e coloca nele o código citado na parte full code. Depois é só chamar o home_list.phtml no conteúdo da sua home:

    {{block type="catalog/product_list" category_id="36" template="catalog/product/home_list.phtml"}}

    Agora, se ele vai funcionar com o filtro, acho que só testando para saber.
  • Eu usei o código dele mas o css ficou ruim então fiz o seguinte:

    No list.phtml eu apaguei as seguintes linhas(+- nas linha 89 e 90):

    <?php $_columnCount = 2; ?>
    <?php $i=0; foreach ($_productCollection as $_product): ?>


    e inseri o código:

    <?php $_columnCount = 3/*$this->getColumnCount()*/; ?>
    <?php $_items = $_productCollection->getItems(); shuffle($_items); ?>
    <?php $i=0; foreach ($_items as $_product): ?>



    O código que usei na página de conteúdo dentro de CMS é o:
    {{block type=\"catalog/product_list\" name=\"home.catalog.product.list\" alias=\"products_homepage\" template=\"catalog/product/list.phtml\"}}


    Porém percebi que ele só muda as posições dos produtos que já estão na home! :( OU seja, se tiver aparecendo 12 produtos na home, o random só pega os 12. :'(

    Vc consegue pensar em alguma forma de ele randomizar entre todos os produtos e não só os que aparecem na home?
  • Alessandra Moderador Global
    Se você alterar diretamente o list.phtml, a listagem das suas categorias e busca serão afetadas. Quando você usa o código:

    {{block type=\"catalog/product_list_random\" name=\"home.catalog.product.list\" alias=\"products_homepage\" template=\"catalog/product/list.phtml\"}}


    Sem alteração no list.phtml, todos os produtos são listados de maneira randômica?

    Você precisa realmente do filtro na home?
  • Sim, sem alteração no list.phtml, todos os produtos são listados de maneira randômica.

    E eu precisava do filtro na home.
  • Alessandra Moderador Global
    Wesley, testei vários códigos e não consegui fazer o que você deseja... :(

    Uma alternativa ao filtro na home seria usar o seguinte filtro:
    http://inchoo.net/ecommerce/magento/adv ... debar-box/

    Que funciona super bem!
    Só que ele não filtra direto, você deve clicar no botão para que os resultados apareçam...

    Se eu encontrar outra alternativa, posto aqui!
  • Alessandra,

    Mais uma vez obrigado e testarei essa alternativa que vc passou. ;)

    Abç
Entre ou Registre-se para fazer um comentário.