Magento : ajouter le mail des clients dans le grid des commandes de l’admin

Copiez le fichier : /app/code/core/Mage/Adminhtml/Block/Sales/Grid.php dans le répertoire local.

Modifier la méthode _prepareCollection() de la manière suivante :

$collection = Mage::getResourceModel($this->_getCollectionClass());
        $collection->getSelect()
                ->join(
                ‘mag_customer_entity’,
                ‘main_table.customer_id = mag_customer_entity.entity_id’, array(‘customer_mail’ => ‘email’));
        $this->setCollection($collection);
        return parent::_prepareCollection();

Puis ajoutez la colonne dans la fonction _prepareColumns()

$this->addColumn(‘thumbnail’, array(
                ‘header’    => Mage::helper(‘Sales’)->__(‘Email’),
                ‘width’     => ’100px’,
                ‘index’     => ‘customer_name’,
                ‘type’        => ‘text’,
            ));

Magento 1.6.2 problème « groupe d’attribut »

Mais où est donc passé les « groupes d’attributs » dans la version de magento 1.6.2 avec le back-office traduit en français ?

Et bien n’ayez crainte il suffit de corriger la ligne 618 dans le fichier ./app/locale/fr_FR/Mage_Catalog.csv :

Vous ne pouvez pas le retirer de ce jeu d\’attributs.

par :

 Vous ne pouvez pas le retirer de ce jeu d’attributs.

 

Magento ajouter le mode de paiement dans le grid des commandes (backend)

Ce code a été testé sur un Magento 1.6.0

Il est souvent utile pour l’utilisateur de pouvoir en un clin d’œil connaître le mode de payement que le client a choisie lors de la commande. Notre but est donc d’ajouter une colonne contenant cette information dans le backend de Magento et plus spécifiquement dans le grid des commandes.

Pour ce faire :

  1. Copiez le fichier ./app/code/core/Mage/Adminhtml/Block/Sales/Order/Grid.php dans ./app/code/local/Mage/Adminhtml/Block/Sales/Order/Grid.php.
  2. Modifier le fonction _prepareCollection() comme ceci :


    $collection = Mage::getResourceModel('sales/order_collection');
    $collection->getSelect()->join('mag_sales_flat_order_payment as table_alias', 'table_alias.parent_id = main_table.entity_id', array('table_alias.*'));
    $collection->addAttributeToSelect('*')->joinAttribute('method', 'method', 'method', null, 'left');
    $this->setCollection($collection);
    return parent::_prepareCollection();

  3. Dans le même fichier ajouter le code suivant dans la functon _prepareColumns() :


    $this->addColumn('payment', array(
    'header' => Mage::helper('sales')->__('Mode de Paiement'),
    'index' => 'method',
    ));

Magento 1.6 problème du moteur de recherche après upgrade

Si tout comme nous le moteur de recherche de votre Magento ne fonctionne plus suite à une mise à jour d’une version 1.3 à une version 1.6, nous vous proposons une petite modification de code.

Cette modification est à réaliser de manière temporaire le temps pour vous de trouver le réel problème qui se cache.

Copiez le fichier « ./app/code/core/Mage/CatalogSearch/Model/Layer.php » dans « ./app/code/local/Mage/CatalogSearch/Model/Layer.php »

Et commentez la ligne 67 : //Mage::getSingleton(‘catalog/product_visibility’)->addVisibleInSearchFilterToCollection($collection);