Archives de novembre, 2015

Serveur dédiés : Ajouter du swap

Voici un petit post rapide pour expliquer comment mettre en place du swap sur votre serveur dédié ( ou sur votre vm ) tournant sous linux.

Ceci vous permettra d’éviter toutes les problèmes du type :

  • ‘proc_open(): fork failed – Cannot allocate memory’ avec composer
  • lancements de tests phpunit

C’est parti pour le code.
Je pars du principe que vous avez assez de place sur votre filesystem /
Nous allons créer un fichier de swap “swapfile” d’une taille de 2 go
( vous pouvez le remplacer par la valeur de votre choix, sous réserve de disposer d’un espace suffisant )

#creation du fichier de swap
sudo fallocate -l 2G /swapfile
#mise a jour des droits du fichier
sudo chmod 600 /swapfile
#declaration du fichier swap
sudo mkswap /swapfile
#activation du fichier swap
sudo swapon /swapfile

Vous pouvez ensuite vérifier que tout a bien fonctionné en lançant la commande suivante :

sudo swapon -s
Pas de commentaires

Magento : Ajouter des nouveaux attributs aux formulaires de création de compte

Une mise à jour de cet article pour Magento 2 est disponible : Magento 2 : Ajouter des nouveaux attributs aux formulaires de création de compte
Dans cet article nous allons voir ensemble comment ajouter proprement un nouvel attribut client qui sera affiché dans les formulaires suivants

  • Création de compte ( normal )
  • Création de compte ( checkout )
  • Création de compte ( admin )

Pour l’exemple nous allons créer un attribut “website_know”, qui permettra de demander au client via quel source il a connu le site.

Le tout va être géré via un module nommé “Hhennes_Customer”.
Je ne détaillerais pas toutes les étapes de création du module mais uniquement les points particuliers.

Partie Code :

Pour commencer voici le fichier de configuration de notre module.

 <?xml version="1.0"?>
 
<config>
 
    <!-- Configuration de base du Module -->
    <modules>
        <Hhennes_Customer>
            <version>0.1.0</version>    
        </Hhennes_Customer>
    </modules>
 
    <!-- Configuration globale -->
    <global>
        <helpers>
            <hhennes_customer>
                <class>Hhennes_Customer_Helper</class>    
            </hhennes_customer>
        </helpers>
       <!-- Configuration de l'installation -->
        <resources>
            <hhennescustomer_setup>
                <setup>
                    <module>Hhennes_Customer</module>
                    <class>Mage_Customer_Model_Entity_Setup</class>
                </setup>
                <connection>
                    <use>core_setup</use>
                </connection>
            </hhennescustomer_setup>
        </resources>
        <!-- Nouveau champ de création de compte dans le checkout -->
        <fieldsets>
            <customer_account>
                <website_know>
                    <create>1</create>
                    <update>1</update>
                    <to_quote>*</to_quote>
                </website_know>
            </customer_account>
            <checkout_onepage_quote>
                <website_know>
                    <to_customer>*</to_customer>>
                </website_know>
            </checkout_onepage_quote>
        </fieldsets>
    </global>
    <frontend>
        <layout>
            <updates>
                <hhennes_customer>
                    <file>hhennes_customer.xml</file>
                </hhennes_customer>
            </updates>
        </layout>
    </frontend>
</config>

Nous reviendrons plus tard sur la signification de l’ensemble des noeuds.…

Pas de commentaires

Prestashop : Ajouter automatiquement les clients à un groupe lors de l’inscription

Afin de segmenter vos clients dans prestashop, il est utile de les ranger dans des groupes clients spécifique.
Ce nouveau module Prestashop, vous permettra d’assigner automatiquement les clients aux groupes souhaités dès leur inscription en fonction de paramètres prédéfinis.

Pour l’installation, comme pour tous mes modules hébergés sur github, l’installation par zip ne fonctionne pas.
Il est nécessaire de déposer le dossier “customerautogroups” , dans le dossier “modules” de votre site via FTP.

Une fois le module installé, un nouvel onglet est disponible dans l’administration, dans “client/ Customer Auto Groups”

Autogroups menu

Vous pouvez ensuite accéder à la liste des règles et créer vos nouvelles règles.

Liste règles auto groupes

 

Les règles sont cumulables et priorisables.

Voici par exemple le formulaire d’édition d’une règle, qui ajouter automatiquement tous les client  qui sont des hommes ( çad dont le champ Client “id_gender” = 1 ) dans un groupe client “Hommes”

customerautogroups

Les conditions possibles sont liées à tous les champs des classes Customer et Address.

Avec ce module il est donc possible de vérifier toutes les conditions suivantes :

  • Clients dont le prénom est Hervé
  • Clients dont le pays est France
  • Clients dont le code postal est 67000
  • Etc.
133 commentaires

Magento : Application du patch SUPEE-6788

Le dernier patch de sécurité releasé par Magento le 27 octobre dernier à apporté de nombreuses corrections.
Mais il entraine également des effets de bords relativement nombreux sur les modules tiers.

J’ai trouvé sur github un outil très pratique qui m’a permis de réaliser l’application de ce patch plus facilement :

Magento® SUPEE-6788 Developer Toolbox :  https://github.com/rhoerr/supee-6788-toolbox

Les scripts doivent être exécutés dans le dossier shell/
Pour commencer il faut analyser les problèmes rencontrés via la commande :

php -f fixSUPEE6788.php -- analyze

Les résultats de l’analyse sont disponibles dans le fichier var/log/fixSUPEE6788.log

Plusieurs types de problèmes sont relevés :

  • Ancienne configuration du router adminhtml des modules
  • Déplacement des controllers admin pour éviter les confit ( avec changement du nom des classes )
  • Blocks qui ne sont pas dans la withelist.
  • Variables qui ne sont pas dans la withelist
  • Modules / fichiers / impactés ou qui posent problèmes.

Si vous souhaitez appliquer directement les correctifs listé dans le fichier de log, vous pouvez lancer la commande suivante :

php -f fixSUPEE6788.php -- fix

Personnellement je ne l’ai pas fait, car cela impactait des modules Tiers dont j’attends la mise à jour officielle.…

Pas de commentaires


Compte Github