2009-05-22 8 views
1

Actuellement, le sélecteur de monnaie est en haut, voici mon site de développement:Modifier la position du sélecteur de monnaie dans Magento

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

Cependant, je voudrais passer le sélecteur de monnaie à un peu moins « Prix » en-tête de la table.

J'ai essayé

echo $this->getCurrency(); 

mais il n'y a rien. Je suppose que j'ai besoin d'une méthode comme getCurrencyHtml(), mais il semble qu'il n'y a pas une telle méthode. Ou dois-je modifier les fichiers de mise en page et comment dois-je procéder?

Répondre

5

Je peux vous montrer un moyen de le faire, mais pour comprendre ce qui se passe, vous devez avoir au moins une idée de base du fonctionnement des fichiers de disposition de Magento. Pour cela, vous devriez lire le guide du concepteur here et une explication de base de la façon dont tout cela fonctionne here.

Maintenant, il existe plusieurs façons de gérer cela, mais je pense que la façon la plus simple est d'utiliser simplement le bloc de devise existant. Voyant que vous allez le mettre dans cette minuscule cellule, je suppose que vous n'aurez pas besoin du titre "Sélectionnez votre devise". Nous aurons donc besoin d'un nouveau modèle. Un bloc dans Magento se compose de deux fichiers, une classe de blocs qui fait tout le travail de génération de contenu dynamique et un fichier modèle qui utilise les méthodes de la classe de bloc avec du HTML pour créer le résultat final. La levée lourde d'obtenir les options de devise est déjà faite par la classe de bloc ainsi si nous pouvons employer cela apparié avec un nouveau modèle modèle nous serons placés.

La déclaration existante dans les fichiers de mise en page et plus précisément directory.xml est

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

Ainsi, le fichier modèle est app \ conception \ frontend [Interface] [thème] \ template \ répertoire \ currency.phtml

Copiez cela dans currency2.phtml et enlevez le titre.

Maintenant, pour créer un nouveau bloc nommé « devise2 » composé de l'ancienne classe de bloc et le nouveau fichier de modèle que nous écrivons

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

Nous allons utiliser que dans/modèle/catalogue/produit/liste. pHTML si ouvert catalog.xml et mettre la nouvelle déclaration de bloc sous

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

dans la section appropriée (je suppose catalog_category_default).

Enfin ouvert /template/catalog/product/list.phtml et ajouter

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

où vous voulez que le bloc apparaisse.

+0

Merci, ça a marché pour moi. –

Questions connexes