Domanda

Sto cercando di aggiungere un nuovo blocco alla pagina Visualizza il prodotto utilizzando il mio file local.xml, all'interno di questo file ho quanto segue:

<catalog_product_view translate="label">
    <reference name="content">
        <block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml">
            <block type="underlay_products/carpets" name="catalog.product.carpet_underlay" as="carpet_underlay" template="catalog/product/views/partials/carpet_underlay.phtml"/>
        </block>
    </reference>
</catalog_product_view>
.

che aggiunge il blocco, ma è nel posto sbagliato e duplica la pagina di visualizzazione del prodotto (ci sono 2 immagini, 2 nomi di prodotti, ecc.) E il mio blocco è in fondo quando dovrebbe essere in un posto diverso. Tuttavia, se aggiungo questa riga al mio file Catalog.xml sotto il blocco dei relativi_products funziona assolutamente soddisfacente, il contenuto è nel posto giusto e non c'è duplicazione del prodotto:

 <block type="underlay_products/carpets" name="catalog.product.carpet_underlay" as="carpet_underlay" template="catalog/product/views/partials/carpet_underlay.phtml"/>
.

Qualche idea perché ciò accade e posso usare invece il mio file local.xml?

È stato utile?

Soluzione

Il motivo per cui hai la vista del catalogo è perché avvolgi il codice con il seguente.

<block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml">
.

Cosa puoi fare è riferimento di chiamata per utilizzare il blocco corrente.

<reference name="product.info">
     <block type="underlay_products/carpets" name="catalog.product.carpet_underlay" as="carpet_underlay" template="catalog/product/views/partials/carpet_underlay.phtml"/>
</reference>
.

Altri suggerimenti

There is no need for re-defining

<block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml">

in local.xml, All you need is to add your block to existing block. Below should work ( I have not tested though )

<catalog_product_view translate="label">
  <reference name="product.info">
       <block type="underlay_products/carpets" name="catalog.product.carpet_underlay" as="carpet_underlay" template="catalog/product/views/partials/carpet_underlay.phtml"/>
  </reference> 
</catalog_product_view>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top