About the Author

OpenTuto

Back Office de PrestaShop 1.7

Premiers pas dans le Back Office de PrestaShop 1.7

L’accès au Back Office (l’administration de votre boutique) requiert une Adresse e-mail et un Mot de passe, ceux saisis lors de l’installation.

L’URL d’accès au Back Office en local : http://localhost/prestashop/NomDuDossierAdmin

1. Le tableau de bord

Tableau de bord PrestaShop 1.7

Tableau de bord PrestaShop 1.7

Le tableau de bord est modernisé avec une barre de menus latérale pour naviguer dans tous les réglages de la boutique.

Il est possible d’ajouter d’autres graphiques que ceux prévus par défaut en cliquant sur le lien + Ajouter des modules à votre tableau de bord en bas de page.

Ajouter des modules à votre tableau de bord

Ajouter des modules à votre tableau de bord

La colonne de droite présente le fil d’actualité de PrestaShop, les mises à jours éventuelles et les liens utiles.

fil d’actualité de PrestaShop

fil d’actualité de PrestaShop

 

Un bouton en haut à droite permet d’activer ou désactiver le mode démo, c’est-à-dire d’afficher ou non les données d’exemples utiles pour tester les indicateurs du tableau de bord.

Le mode démo de PrestaShop

Le mode démo de PrestaShop

Les données d’exemples chargées dans le catalogue produit devront être supprimées manuellement, lorsqu’elles ne seront plus utiles à la compréhension du système. Pour ce faire, il faut utiliser le module PrestaShop Cleaner.

Il faut premièrement installer PrestaShop Cleaner en suivant les étapes suivantes : Modules >> Modules et services puis cherchez ce plugin en saisissant le mot clé Cleaner dans la zone de recherche. Une fois trouvé, cliquez sur INSTALL.

Installer PrestaShop Cleaner

Installer PrestaShop Cleaner

Une fois installé, cliquez sur CONFIGURE et ensuite choisissez les éléments à supprimer.

Configurer PrestaShop Cleaner

Configurer PrestaShop Cleaner

Toutes les opérations effectuées avec ce module sont irréversibles.

2. La recherche

La zone de recherche permet de filtrer le domaine de recherche pour des résultats plus rapides et plus adéquats (Catalogue, Client par nom, Factures, Paniers, …).

Zone de recherche PrestaShop 1.7

Zone de recherche PrestaShop 1.7

Le menu Accès rapide propose des liens vers les fonctions et les pages les plus usitées.

Accès rapide PrestaShop 1.7

Accès rapide PrestaShop 1.7

Vous pouvez ajouter la page courante au menu d’accès rapide ou cliquer sur Gérer les accès rapides.

En haut à droite, vous pouvez Ajouter un nouveau lien d’accès rapide.

Personnaliser le menu accès rapide

Personnaliser le menu accès rapide

En cliquant sur le croix rouge, vous désactiverez le lien et pourrez l’éditer avec le menu Modifier.

Il est aussi possible de renommer un lien et préciser son URL.

installer prestashop 1.7 en local

Installation de prestashop 1.7 en local

PrestaShop est basé sur une base MySQL et des scripts PHP, pour l’installer en local, il faut donc que les composants Apache/PHP/MySQL tournent parfaitement sur votre ordinateur.

Leur installation se fait à l’aide de WampServer (Windows)/Mamp (MAC) qui se charge de les mettre en service.

1. Installer WampServer sur PC

Exécutez le fichier que vous avez téléchargé, cliquez sur Next et suivez la procédure d’installation jusqu’à la fin.

Une fois installé, vous pouvez lancer WampServer à partir du raccourcis créée sur le bureau.

Une nouvelle icône wampserver offline icon apparaît à gauche de l’horloge dans la barre des tâches de Windows .

Cliquez sur l’icône wampserver offline icon puis sur Démarrer les services.

Cliquez à nouveau sur l’icône Wamp , pointez l’option PHP puis l’option Extensions PHP pour vérifier et activer, au besoin, les extensions suivantes :

Vérifier et activer les extension PHP suivantes :

Extension PHP à activer pour installer PrestaShop

Extension PHP à activer pour installer PrestaShop

Pour activer une extension PHP, cliquez sur l’icone de Wamp >> PHP >> extensions PHP.

Redémarrer Wamp (Wamp >> Redémarrer les services ).

2. Installation de prestashop 1.7 en local

Télécharger les fichiers PrestaShop : https://www.prestashop.com/fr/telecharger

Copier le dossier prestashop dans C:\wamp\www.

Créer la base de données MySQL qui recevra les données de PrestaShop :

  1. Allez à http://localhost/phpmyadmin/
  2. Utilisez root comme nom d’utilisateur et laissez le mot de passe vide puis cliquez sur Exécuter.
  3. Créer la base de données en cliquant sur l’onglet Bases de données puis, dans le champ Créer une base de données, tapez par exemple openpresta.
  4. Cliquez sur le bouton Créer.

    Création de base de données MySQL

    Création de base de données MySQL

Pour installer PrestaShop, allez à http://localhost/prestashop/install puis procédez à l’installation comme suit :

1- Installation : sélectionnez la langue

1- Installation : sélectionnez la langue

Dans la page d’accueil qui s’affiche, sélectionnez la langue.

Acceptez ensuite les conditions d’utilisation et cliquez sur Suivant.

2- Installation : compatibilité système

2- Installation : compatibilité système

La vérification de la compatibilité de votre système s’affiche ensuite. Si certains paramètres optionnels ne sont pas satisfaits, cela ne mettra pas en cause le fonctionnement de PrestaShop. Il est tout de même conseillé de les modifier selon la méthode préconisée par l’assistant d’installation PrestaShop.

Cliquez sur Suivant.

3- Installation : informations de la boutique

3- Installation : informations de la boutique

Renseignez les informations sur votre boutique. Celles-ci ne sont pas définitives et pourront être modifiées par la suite.

Cliquez sur suivant.

4- Installation : configuration système

4- Installation : configuration système

Configurez la base de données. Il s’agit de saisir les informations qui permettront au système d’y accéder et que vous avez noté lors de sa création sur le serveur.

Cliquez sur Tester la connexion à la base de données pour vérifier que les paramètres saisis sont corrects.

Cliquez sur Suivant.

5- Installation : Installation de la boutique

L’installation terminée, il ne vous reste qu’à supprimer le dossier install sur le serveur, pour des raisons de sécurité.

L’accès au Front Office (votre boutique) et au Back Office (l’administration de votre boutique) se fait par les boutons Découvrez votre boutique et Gérez votre boutique.

L’accès au Front Office et au Back Office

L’accès au Front Office et au Back Office

Dans l’article suivant, nous allons découvrir le Back Office de PrestaShop.

Les Services AngularsJS

Les Services AngularJS :

Qu’est ce qu’un Service AngularJS

Un Service AngularJS  est un Singloton (ils ne sont instanciés qu’une seule fois « et non une fois par importation ») nous fournit un ensemble de tâches pour faire fonctionner une application AngularJS, on a plusieurs services qui sont prêt à l’emploi, ils sont précédés du symbole $, nous allons voir quelques exemples :

  • $location : contient des méthodes pour intéragir avec votre URL(page web actuelle)
  • $http : Communication avec le serveur
    Nous allon faire un exemple pour bien comprendre le pricipe du Service $http, nous allons créer un fichier data.js dans lequel nous allons stocker les données et un fichier index.html pour les afficherdata.js :

    index.html :

Comment créer votre propre Service AngularJs :

un Service angularJS est tout simplement un module, pour créer un service AngularJS on a le droit d’utiliser 5 méthodes, qui sont les uivantes :

  • service()
  • factory()
  • provider()
  • value()
  • constant()

Pour bien comprendre le pricipe, nous allons prendre l’exemple de la méthode service() :

Nous avons créé un service permettant de faire la mutiplication par 2.

Les Filtres AngularJS

Les Filtres AngularJS :

AngularJs contient des Filtres pour formater les données, ci-dessous quelques exemple :

- currency : Formater un nombre en format devise

- date : Formater une date

uppercase : Afficher une chaine de caractére en majuscule

lowercase : Afficher une chaine de caractére en miniscule

- orderBy : Ce filtre, o va l’ajouter dans une directive, il est utilisé pour modifier l’ordre en choisissant un critére

- filter : on l’utilise pour filtrer dans les tableaux, par exemple on veux filtrer un liste et chercher les noms qui contient la lettre ‘r’

– On va utiliser une zone de texte pour donner la main à l’utilisateur de faire la recherche, pour ce faire on va utiliser ng-model :

 

Synchronisation des données entre la vue et le model (binding des données)

Synchronisation des données entre la vue et le model (binding des données) :

Dans ce tuto, nous allons voir comment faire pour synchroniser les données entre la partie vue (html) et model (controller).

Qu’est-ce que le data-binding ?

Tout simplement, c’est la liason entre la partie vue de votre application (view) et la partie logique (model). Donc, pour bien comprendre le principe, nous allons les directives suivantes.

 1. ng-bind :

Cette directive est utilisée pour faire la liason entre un élément HTML (view) et une propriété dans la partie logique (model).
N.B : Cette directive est utilisée juste pour l’affichage des propriétés, on peut l’utiliser par exemple dans une balise <p>

Exemple :

Remarque :

On peut utiliser l’expression {{}} au lieur de la directive ng-bind, cidessous un exemple :

2. ng-model :

On peut dire que la directive ng-model joue le rôle inverse de la directive ng-bind, cette dernière nous permet de lire une donée entrante par un utilisateur et l’envoyer au model pour traitement, on peut l’utiliser avec les balises (input, select, textarea,…).

Exemple :

 

 

Directives Angular JS

Directives Angular JS :

Les directives Angular JS, peuvent être utilisées au sein du code HTML avec une condition, elles doivent être prefixées par ng-.
NB : Vous pouvez créer vos propres directives.

Quelques exemples :

  • ng-app : définie l’élement pricipal de l’application angular JS.
  • ng-init : pour initialiser les données de l’application.
  • ng-model : récupérer la valeur envoyée dans la partie HTML et l’envoyer dans la partie JS pour traitement.
  • ng-repeat : Pour répéter des élements HTML.

Exemple :

Création d’une directive :

Pour créer votre propre directire, il faut utiliser la fonction .directive
Quand vous l’avez créee, il faut la nommer en utilisant la norme caseCamel (myDirective) et en l’appellant comme suit my-directive

Exemlpe :

Vous pouvez appeller une directive en utilisant :

  • une balise : <my-directive></my-directive>
  • un attribut : <div my-directive></div>
  • class : <div class= »my-directive »></div>
  • commentaire : <!– directive: my-directive –>

Injection de dépendance – Méthode Setter

Injection de dépendance – Méthode Setter :

Dans ce tuto, nous allons voir comment faire une injection de dépendance en utilisant la méthode setter :

  • Injecter une variable primitive :
    Nous allons créer une classe Personne.java qui va contenir 2 variables (id et nom) et leurs méthodes setter et getterPersonne.java :


    applicationContext.xml :


    Classe d’éxecution (Main.java) :

  • Injecter un Objet :
    Dans le cas ou on a une relation entre deux classes une relation de type HAS-A, du coup nous avons besoin de créer l’instance de la classe B pour la faire passer au constructeur de la classe A. Nous allons prendre l’exemple d’une personne qui a une adresse.(Personne Has-A Adresse)

    Adresse.java :

    Personne.java :

     aplicationContext.xml :

    Classe d’éxecution(Main.java) :

     

     

Autres apports de la version 2 de Hadoop

La version 2 de Hadoop supporte officiellement Windows Server et Windows Azure.

La version 2 de Hadoop permet aussi :

  • D’accéder à HDFS à partir d’un système de fichiers distribué NFS-v3, ce qui permet alors de considérer HDFS comme un disque partagé standard.
  • De prendre des « clichés » (snapshots) de tout ou partie d’un cluster.

Hadoop 2 – YARN (Yet Another Resource Negotiator)

Apache Hadoop YARN (Yet Another Resource Negotiator) est une technologie de gestion de clusters. Elle rend l’environnement Hadoop mieux adapté aux applications opérationnelles qui ne peuvent pas attendre la fin des traitements par lots.

La principale différence entre Hadoop version 1 et Hadoop version 2 est la séparation claire dans la version 2 entre la gestion des ressources du cluster et le modèle de traitement des données.

Hadoop 1 vs Hadoop 2

Dans la version 1, MapReduce assure à la fois la gestion des ressources et le traitement des données.

Dans la version 2 :

  • La gestion des ressources du cluster est assurée par YARN.
  • Les modèles de traitement des données, MapReduce pour ce qui nous concerne, s’appuient sur YARN.
Hadoop 1 vs Hadoop 2

Hadoop 1 vs Hadoop 2

Les deux aspects « gestion des ressources du cluster » et « modèle de traitement des données » sont nettement distincts dans la version 2 de Hadoop, ce qui permet d’utiliser YARN avec des modèles de traitement différents de MapReduce tout en bénéficiant des fonctionnalités de HDFS.

Les daemons de type JT et TT n’existent plus dans la version 2 de Hadoop. Ils sont remplacés par plusieurs nouveaux daemons :

  • Le ResourceManager (RM) : il y en a un par cluster.
  • L’ApplicationMaster (AM) : il y en a un par job.
  • Le NodeManager (NM) : il y en a un par nœud esclave.

Hadoop 2 – HDFS Federation

Le dispositif HDFS Federation permet de faire cohabiter plusieurs NameNodes (NN) au sein d’un même cluster physique.

Les NN sont indépendants deux à deux : chaque NN gère un espace de nommage (namespace) qui lui est propre et les NN ne communiquent pas entre eux.

Chaque NN se voit allouer un certain nombre de blocs pour stocker les fichiers dont il a la charge. Ces blocs sont répartis sur plusieurs nœuds. Un disque peut héberger des blocs correspondant à des NN différents.

L’intérêt du concept de Federation est double :

  • Federation facilite le scaling out d’un cluster :
    • Il est facile de rajouter des nœuds pour augmenter la capacité de stockage et/ou la puissance de traitement mais, dans la version 1, toute la charge de travail repose sur un seul NN, ce qui a ses limites lorsque l’on gère des clusters de plusieurs milliers de nœuds.
    • La version 2 de Hadoop, en distribuant la charge de travail entre plusieurs NN, facilite l’avènement de clusters de grande taille ; les temps de réponse au niveau des NN peuvent être améliorés (moins de métadonnées à gérer pour chaque NN, d’où besoins en RAM et en temps CPU moindres pour chaque NN, etc.).
  • Federation permet d’isoler chaque namespace des autres, par exemple pour faire cohabiter au sein d’un même cluster physique un cluster logique de développement et un cluster logique de production.
Une Federation HDFS

Une Federation HDFS

Les notions de High Availability et de Federation sont indépendantes. Il est possible d’activer l’une ou l’autre, ou les deux. Dans ce dernier cas, il faut activer l’option Federation avant d’activer l’option High Availability.