16 août 2011, 12:33
par Jérémie Bouchet
Commenter

Quelques nouveautés de la 1.6.0.0

Après une alpha (mai 2011), une bêta (juin 2011), une rc1 (fin juin 2011) et une rc2 (juillet 2011), nous attendons avec impatience la sortie de la version finale. Elle nous réserve quelques belles nouveautés, dont quelques unes vous sont présentées ici :

  • Country of manufacture : Un produit a désormais par défaut un attribut supplémentaire, celui du pays de fabrication.
    (Catalogue > Gérer les produits > Produit > Général )
  • Minimum Advertised Price : Une nouveauté qui ne passera pas inaperçue, vous pouvez désormais gérer l’affichage du prix minimum suggéré par le fabricant de votre produit.
    Pour ce faire, activez tout d’abord MAP (Système > Configuration > Ventes > Ventes > Minimum Advertised Price).
    1. Enable MAP : Oui / Non. Active globalement la fonction.
    2. Apply MAP : Oui / Non. La valeur par défaut appliquée aux produits. Si vous choisissez Oui, tous les produits seront affectés. Choisissez Non si vous voulez choisir au cas par cas.
    3. Display Actual Price :
      1. In Cart : Le prix de vente de votre produit ne sera affiché qu’après l’ajout au panier.
      2. Before Order Confirmation : Le prix de vente de votre produit ne sera affiché qu’à la dernière étape du tunnel de vente.
      3. On Gesture : Le prix de vente de votre produit est affiché sur la fiche produit, dans une box qui s’affiche au clic sur le lien « Click for price »

    Enfin, configurez votre produit pour qu’il contienne le prix conseillé par le fabriquant : (Catalogue > Gérer les produits > Produit > Prix)

N’hésitez pas à témoigner de votre utilisation future de cette nouvelle fonctionnalité !

31 mai 2011, 16:51
par Jérémie Bouchet
Commenter

Magento Go : Magento as a Service (MaaS) !

Magento Go est le dernier service dont Magento (ex Varien) fait la promo de manière assez soutenue, en nous proposant de créer rapidement et facilement une boutique en ligne pour les petits projets.

En fait, c’est une solution clé en main, pré-installée, à l’instar d’autres services en mode hébergé (Kiubi, Amen, etc.. j’ai compté presque 40 concurrents). Exit donc les hébergeurs et les installations techniques, Magento s’occupe de tout. Vous n’avez qu’a commander votre magasin, enregistrer vos produits et commencer à vendre !
Cela à l’air pas mal sur le papier, mais qu’est ce qui se cache exactement derrière ce service ? J’ai essayé pour vous.

Lire la suite »

18 mar 2011, 12:28
par Jérémie Bouchet
Commenter

Profils clients & notifications

Les notifications des diverses mises à jour et corrections de bug que nous fait l’admin Magento sont utiles pour nous développeurs, mais « stressantes » pour les clients. Comment les enlever pour eux uniquement ?

  1. Créer un rôle. Par exemple « client_role ». (Système > Permissions > Rôles). Dans les ressources du rôle, cocher tout ce dont vous semble mais PAS « système > notifications »
  2. Créer un user et lui donner le rôle client_role. (Système > Permissions > Utilisateurs)

Und s’ech alles !

EDIT ! Non, s’ech net alles :/ Appliquer ce rôle empêche juste le client d’accéder à la page des notifications, mais ne désactive pas la popup à la connexion, ni le bandeau en haut de page. Ce qui, dans notre cas, aggrave la situation, puisqu’il ne peut même plus marquer comme lu les notifs qu’il aura vu…
Du coup, j’ai crée un petit module qui finit le travail, et ça marche !

22 fév 2011, 11:40
par Jérémie Bouchet
16 comments

Google Base : et pourquoi pas la France ?

Une des API de Google installée par défaut sur Magento est Google Base. Je ne ferai pas de présentation détaillée de ce service, mes amis de e-humeurs étant bien mieux placés pour le faire. Néanmoins, ils m’ont posé la question suivante : Le service est en version bêta dans le monde entier (sauf pour les États-Unis), et l’extension propose comme pays cibles les États-Unis (évidement), le Royaume-Uni et l’Allemagne. Et pourquoi pas la France ?
Lire la suite »

10 fév 2011, 08:42
par Jérémie Bouchet
Commenter

Sortie de Magento 1.5.0.0

EDIT : Une correction est apparue le 10 février, et Varien recommande vivement d’upgrader les sites déjà en version 1.5.0.0 vers la 1.5.0.1.

Magento 1.5.0.0 est sorti en version stable le mardi 8 février.
Cette nouvelle version apporte comme d’habitude pas mal de nouveautés & améliorations et corrige un nombre impressionnant de bugs (plus de 400 !)

Entre autres nouveautés, j’ai noté les plus intéressantes :
Lire la suite »

19 jan 2011, 16:51
par Jérémie Bouchet
Commenter

Changer l’ordre des messages

Les messages d’information de Magento peuvent être de 4 types différents :

(notez que le warning n’est pas designé par défaut…). De base, ces messages sont regroupés par type, et affichés les uns sous les autres.
Lire la suite »

4 jan 2011, 13:21
par Jérémie Bouchet
Commenter

Minerva Multiflat Shipping – Ordre des magasins

Le module Pickup at Event / Multiple Flatrates est pas mal fait, surtout dans l’idée : il permet de choisir une livraison en magasin, au choix parmi la liste que vous proposerez à vos clients. Seul hic, l’ordre des magasins entrés dans la configuration ne correspond pas à l’ordre finalement affiché au choix par le client.

Plutôt que de modifier le module et d’ajouter un champ « order », j’ai préféré modifier le comportement de la fonction qui récupère les méthodes de livraison et de ranger par ordre alphabétique du nom des items issus du module.
Lire la suite »

4 jan 2011, 10:21
par Jérémie Bouchet
2 comments

Utilisation des méthodes de paiement dans le backoffice

Par défaut, la plupart des méthodes de paiement (notamment CyberMut et Paypal) ne sont pas disponibles lors de la création d’une commande via le backoffice. Un moyen simple de contourner cette restriction est, pour le module donné, de modifier la valeur de la variable

$_canUseInternal

et de la passer à

true

.

La question non encore résolue : Pourquoi est-ce bloqué par défaut ? Si vous avez la réponse, je suis preneur.

21 déc 2010, 09:43
par Jérémie Bouchet
Commenter

Configuration conditionnelle

Comment ajouter des contrôles javascript sur les éléments de la configuration de notre module, comme le font certains par exemple en fonction de la sélection d’un dropdown, où des champs apparaissent et disparaissent ?

En fait, c’est assez simple. Dans le fichier system.xml de votre module, il faut ajouter pour les éléments dont la présence est conditionnelle à la valeur d’un autre l’instruction suivante :

<depends><nom_de_votre_element>1</nom_de_votre_element></depends>

comme dans l’exemple suivant :

<sections>
<modulename translate="label">
<label>Product Box</label>
<tab>advisa</tab>
<sort_order>12</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
<groups>
<general_settings translate="label">
<label>General settings</label>
<sort_order>10</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
<fields>
<general_settings_enable translate="label">
<label>Enable</label>
<frontend_type>select</frontend_type>
<source_model>adminhtml/system_config_source_yesno</source_model>
<sort_order>10</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
</general_settings_enable>
<general_settings_position_top translate="label">
<label>Position top (px) *</label>
<comment>Position relative of top of window. Default: 100</comment>
<frontend_type>text</frontend_type>
<sort_order>20</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
<depends><general_settings_enable>1</general_settings_enable></depends>

<validate>required-entry</validate>
</general_settings_position_top>
</fields>
</general_settings>
</groups>
</modulename>
</sections>
14 déc 2010, 14:58
par Jérémie Bouchet
Commenter

Layout conditionnel

Dans une balise <action> des layouts, nous pouvons utiliser un test conditionnel nous permettant de vérifier la valeur d’un paramètre dans la configuration. Par exemple, le code suivant :

<action method="unsetChild" ifconfig="productbox/settings/settings_scrolling"><name>product.description</name></action>

permet de désactiver le bloc product.description du layout courant, à condition que le paramètre settings_scrolling soit « true ».

Mais comment faire si nous voulons tester son contraire ? C’est à dire supprimer le bloc à condition que le paramètre soit « false » ?
Pour cela, nous allons créer une nouvelle condition au layout : « ifnotconfig ». Et pour ce faire, il faut créer un nouveau module, surchargant le Model Layout.php du module « Core » :

app/code/core/Mage/Core/Model/Layout.php

et réécrire la méthode _generateAction() en ajoutant juste après

if (isset($node['ifconfig']) && ($configPath = (string)$node['ifconfig'])) {
if (!Mage::getStoreConfigFlag($configPath)) {
return $this;
}
}

le code suivant :

elseif(isset($node['ifnotconfig']) && ($configPath = (string)$node['ifnotconfig'])) {
if (Mage::getStoreConfigFlag($configPath)) {
return $this;
}
}

Il ne vous reste plus qu’à utiliser la nouvelle condition :

<action  method="unsetChild"  ifnotconfig="productbox/settings/settings_scrolling"><name>product.description</name></action>

And it’s done !