Pergunta

Atualmente, o selector de moeda está no topo, aqui está o meu site de desenvolvimento:

http://nordschleife.metaforix.net/118/118 /index.php/kyocera.html

No entanto, eu gostaria de mudar o seletor de moeda para pouco menos de “preço” de título da tabela.

Eu tentei

echo $this->getCurrency();

mas não há nada. Eu acho que preciso de algum método como getCurrencyHtml(), mas parece que não há tal método a.

ou devo editar arquivos de layout, e como eu deveria ir sobre como fazer isso?

Foi útil?

Solução

Eu posso mostrar-lhe uma maneira de fazer isso, mas, a fim de entender o que está acontecendo, você precisa ter pelo menos uma compreensão básica de como arquivos de layout trabalho de Magento. Por que você deve ler o guia do designer aqui e uma explicação básica de como tudo funciona aqui .

Agora, existem várias formas de lidar com isso, mas eu acho que a maneira mais fácil é simplesmente usar o bloco de moeda existente. Vendo como você estará colocando-o em que cela minúscula Eu suponho que você não vai precisar da "Seleccione a sua moeda" manchete. Então, vamos precisar de um novo modelo.

Um bloco em Magento consiste em dois arquivos, uma classe bloco que faz todo o trabalho de gerar conteúdo dinâmico e um arquivo de modelo que usa a classe bloco métodos, juntamente com alguns html para criar o resultado final. O trabalho pesado de obter as opções de moeda já é feito pela classe bloco por isso, se podemos usar esse emparelhado com um novo arquivo de modelo que vai ser definido.

A declaração existente nos arquivos de layout e, especificamente directory.xml seja

<block type="directory/currency" name="currency" before="catalog.leftnav" template="directory/currency.phtml"/>

Assim, o arquivo de modelo é app \ projeto \ frontend [interface] [tema] \ template \ directory \ currency.phtml

Copiar que a currency2.phtml e lá remover o cabeçalho.

Agora, para criar um novo bloco chamado "currency2" que consiste na classe bloco velho eo novo arquivo de modelo que escrever

<block type="directory/currency" name="currency2" as="currency2" template="directory/currency2.phtml"/>

Vamos usar isso em /template/catalog/product/list.phtml catalog.xml tão aberto e colocar a nova declaração bloco sob

<block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">

na seção apropriada (presumo catalog_category_default).

/template/catalog/product/list.phtml Finalmente aberto e add

<?php echo $this->getChildHtml('currency2'); ?>

onde você deseja que o bloco seja exibido.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top