Blog

  • Créer une extension pour twig


    Dernièrement, j’ai eu l’occasion de travailler sur Symfony 4, et aussi sur Twig.

    Pour les quelques jours ou j’ai travaillé dessus, j’ai pu voir divers changements sur le Framework :

    • la partie installation
    • la partie multilingue (via l’extension i18n)
    • la partie Twig (la version 2)

    Même si j’avais déjà utilisé Symfony auparavant (dans sa version 2), j’ai du revoir certaines choses et en apprendre d’autres.

    J’ai aussi appris à étendre des fonctionnalités de Twig, comme des fonctions ou des filtres.

    Voici 2 liens du site de twig qui m’ont été utile. Je les partage avec vous.

     

    Si vous comprenez l’anglais, tout devrait bien se passer. En effet, ces 2 sites contiennent toutes les informations pour pouvoir étendre Twig.

    Pour vous montrer mes différentes créations d’extensions, je ferai des dépôts Github.
    Ma première extension est un Timer relatif, filtre permettant d’avoir des dates sous le format : il y a 1 heure, ou dans un mois.

    Vous pouvez donc voir le script sur Github, et aussi sur packagist.

    N’hésitez pas à l’utiliser et à me faire des retours d’améliorations/d’idées/etc…
    J’ai fait en sorte que le script soit maintenable dans la durée, et qu’il y ai le moins de bug possible.

    Dites-moi aussi si vous voulez un tutoriel complet sur ce thème.

  • WP-CLI, configuration et utilisation

    WP-CLI, configuration et utilisation

    Qu’est ce que WP-CLI

    WP-CLI est un ensemble de fonctionnalité en ligne de commande, permettant de gérer tous projets sur WordPress. Comme il est dit sur le site wp-cli.org, nous pouvons faire beaucoup de chose. Par exemple :

    • Installer un site (ou un multisite)
    • Générer, et gérer le fichier wp-config.php
    • Mise à jour des plugins, thèmes et traductions
    • etc…

    Utilisation de WP-CLI…

    Pour pouvoir utiliser WP-CLI, il est obligatoire d’installer sur votre poste (ou le serveur) le fichier PHAR qui va bien. Voici le script actuel d’installation :

    curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
    php wp-cli.phar --info
    chmod +x wp-cli.phar
    sudo mv wp-cli.phar /usr/local/bin/wp
    wp --info
    

    Et c’est suffisant. En tapant la commande wp –version, vous devriez avoir cette réponse : WP-CLI 1.5.0.
    Remarque : pour mettre à jour WP-CLI, il existe deux solutions, la première étant la commande wp cli update, la deuxième étant de repasser le script d’installation.

    Comme je disais dans l’introduction, il est possible d’installer WordPress avec WP-CLI, en quelques lignes.
    Voici le script minimal d’installation :

    wp core download --locale=fr_FR
    wp core config --dbname=wordpress --dbuser=root --dbpass=admin --dbprefix=wp_
    wp db create
    wp core install --url="http://local.wordpress/" --title="Example Site DEV" --admin_name=guillaume --admin_email=g.jf.richard@gmail.com --admin_password=guillaume;
    wp rewrite structure '/%postname%/' --hard
    wp rewrite flush --hard
    

    Voici ce que fait le script, ligne par ligne :

    Ligne 1 : Téléchargement des fichiers WordPress de base (en VF).
    Ligne 2 : Génération et lecture du fichier wp-config.php, avec les informations sur la base de donnée (nom BDD, utilisateur, mot de passe, préfixe des tables de la base)
    Ligne 3 : Création de la base de donnée
    Ligne 4 : Processus d'installation standard de WordPress, avec les informations qui vont bien (url du projet, titre du projet et informations de l'utilisateur).
    Ligne 5 : Met à jour la structure des liens (par exemple : /%postname%/)
    Ligne 6 : Réécriture des règles
    

    On obtient l’installation suivante :

    Et configuration plus poussé…

    Il est possible d’améliorer ce dernier script, grâce à un fichier de configuration.
    Vous pouvez en savoir plus directement sur la page dédié du site make.wordpress.org, la page est en anglais.

    En quelques mots, WP-CLI peut automatiquement découvrir et lire les options d’un fichier de configuration (si il existe).

    WP-CLI détecte tout d’abord le fichier wp-cli.local.yml, présent dans le répertoire courant du projet. Il détecte ensuite le fichier wp-cli.yml, présent aussi dans le dossier courant du projet.
    Pour finir, la détection de ~/.wp-cli/config.yml. Le chemin du fichier doit être défini par la variable d’environnement WP_CLI_CONFIG_PATH.

    Le fichier de configuration peut contenir beaucoup de chose, comme :

    • Les variables globales (de la BDD, des utilsateurs, etc…)
    • Les commandes à désactivées (selon l’environnement)
    • Les plugins et thèmes a installer (ou à désinstaller).
    • etc…

    Il existe un exemple de fichier wp-cli.yml, sur la page dédié du site make.wordpress.org. Il est compréhensible.

    Voici le fichier de configuration que je veux utiliser pour améliorer mon script d’installation :

    # Global parameter defaults
    color: true
    apache_modules:
      - mod_rewrite
    rewrite structure:
      - /%year%/%monthnum%/%postname%/
    core download:
      locale: fr_FR
    core install:
      admin_user: guillaume
      admin_password: guillaume
      admin_email: g.jf.richard@gmail.com
      title: WordPress Development
      url: http://local.wordpress/
    core config:
      dbuser: root
      dbpass: admin
      dbhost: localhost
      dbname: wordpress
      dbprefix: wp_
      extra-php: |
            define('WP_DEBUG', true);
            define('WP_CACHE', false);
    

    Reprenons mon précédent script d’installation de WP et modifions-le pour qu’il corresponde au fichier de configuration précédent.
    Voici ce que cela donne :

    wp core download
    wp core config
    wp db create
    wp core install
    wp rewrite structure --hard
    wp rewrite flush --hard
    

    En l’état, si vous lancez ce script, vous vous retrouverez avec un WordPress minimal, correspondant à l’autre script d’installation.
    Vous pourrez réutilisez ce script avec tous les fichiers de configuration wp-cli.yml que vous aurez, quelque soit le projet, quelque soit l’environnement.

    A partir de là, vous pourrez installer facilement n’importe quel projet WP en quelques secondes.

    Si vous avez des questions en relation à l’article, ou si vous voulez des précisions, n’hésitez pas à me le dire en commentaires, ou par mail.

    Liens

    L’interface de ligne de commande pour WordPress : https://wp-cli.org/fr/
    Commandes WP-CLI https://developer.wordpress.org/cli/commands/
    Handbook wp-cli https://make.wordpress.org/cli/handbook/

  • MERISE pour la conception de Bases de Données

    MERISE pour la conception de Bases de Données

    Tuto MERISE pour la conception de Bases de Données

    Cette formation nous est proposé par Marc Augier sur le site de tuto.com. Le thème est sur la méthode Merise, pour la conception de bases de données.

    Cette méthode fonctionne autant pour Oracle, MySQL, et Postgre; c’est-à-dire les différentes technologies SGBD.

    La formation dure environ deux heures et demi, et coûte 28€. Elle est divisé en 4 parties, qui sont :

    • Présentation du cours
    • Pourquoi les bases de données
    • Méthode MERISE
    • Un peu de pratique

    Une formation = un extrait

    Voici l’extrait de la formation, qui est la présentation du cours

    Liens de partenariat

    Lien de la formation : Tuto MERISE pour la conception de Bases de Données
    Lien des formations liées à Merise.

  • Evènements WordPress début 2018

    Le Vendredi 09 Mars 2018, s’est déroulé le wordcamp 2018, qui s’est déroulé sur Paris.

    C’est un des événements de référence sur WordPress, en France.

    Malheureusement, je n’y ai pas pu y assister. Mais je me rattraperai au prochain événement sur ce CMS, qui se déroulera à Lyon : le WP Tech.

     

    Le WP Tech se déroulera, comme je disais, à l’embarcadère à Lyon, le 28 Avril prochain.

    J’y assisterai en tant que conférencier, avec pour thème : Make (et MakeFile) dans le cadre de WordPress : une révolution ?

    Je vous invite à venir à cette événement si vous êtes intéressé par ce genre de chose, voir à me poser des questions sur ce thème, si vous voulez en savoir plus.

    Bonne journée à vous.

  • Introduction à GraphQL

    Introduction à GraphQL


    Pour cette semaine, voici une petite playlist Youtube sur GraphQL, une technologie créée par Facebook.

    GraphQL est considérée comme une alternative aux REST API

    Donnez-moi votre avis sur cette technologie.