Planète

Drupal 8 à votre service !

A l'instar des Plugins, Drupal 8 a introduit un nouveau concept, repris de Symfony2, dans son API : les Services. Ces derniers permettent de mettre à disposition des fonctionnalités assurant une et seule tache, comme par exemple envoyer un courrier électronique ou encore construire le fil d'ariane. La différence majeure des Services comparés aux Plugins est que les services ne disposent pas généralement (ou tout du moins directement) d'une interface graphique de configuration. Pour reprendre la définition concise : un service est un objet PHP, conçu dans le but d'atteindre un objectif spécifique, qui effectue une sorte de tâche globale. Découvrons ce nouveau système des services.

Drupal 8 à votre service !

A l'instar des Plugins, Drupal 8 a introduit un nouveau concept, repris de Symfony2, dans son API : les Services. Ces derniers permettent de mettre à disposition des fonctionnalités assurant une et seule tache, comme par exemple envoyer un courrier électronique ou encore construire le fil d'ariane. La différence majeure des Services comparés aux Plugins est que les services ne disposent pas généralement (ou tout du moins directement) d'une interface graphique de configuration. Pour reprendre la définition concise : un service est un objet PHP, conçu dans le but d'atteindre un objectif spécifique, qui effectue une sorte de tâche globale. Découvrons ce nouveau système des services.

Par kgaut
Kevin Gautreau

Première alpha de mon module de pronostics sous drupal 8 : MesPronos

Je travaille depuis quelques années sur un module de pronostics (à un rythme loin d'être soutenu comme tout bon side-project). Il a connu un début de version en Drupal 7, puis en Ruby on Rails, puis sur Symfony, puis enfin sur Drupal 8, il m'a permis de tester Drupal 8 à l'aube des premières versions alpha.

Entièrement open-source, le module est hébergé sur Github : https://github.com/mespronos/mespronos.

Depuis ce week-end, j'ai mis en production le module sur le site https://mespronos.net/ afin de pouvoir le tester en conditions réelles et récupérer suffisamment de données afin de continuer à travailler sur les templates et fonctionnalités à venir (classements...). Pour l'instant les pronostics sont possible sur la ligue 1 Française et le tournois des VI nations.

N'hésitez-pas à tester et me donner vos retours, tout en gardant à l'esprit que c'est une version alpha, et que le thème n'est pour l'instant pas du tout travailler (c'est celui de base de Drupal 8).

Pour suivre l'avancement, vous pouvez-vous rendre sur la page facebook dédiée : https://www.facebook.com/mespronos/.

 

Par admin

Les propositions de logo pour l'association

Il y a quelques semaines, nous présentions l'appel à contribution, lançant un concours de logo pour l'association. L'idée est de mettre une coup de neuf sur l'identité visuelle de l'association.

Voici les propositions anonymes, sans annotations.
Les commentaires sont ouverts, et le bureau fera une sélection prochainement.

Il reste encore une semaine pour proposer vos contributions, à vos crayons.

1. Logo 1 1. Fond Bleu logo 1
2. Logo 2 2. Fond bleu logo 2
3. Logo 3 3. Fond blanc logo 3
4. Logo 4 fond bleu 4. Logo 4
5. Logo 5 6. Logo 6
7. Logo 7 8. Logo 8
9. Logo 9 10. Logo 10
11. Logo 11 12. Logo 12
13. Logo 13 13. bis Logo 13 bis
14. Logo 14
En page d'accueil : 
Par admin

Les propositions de logo pour l'association

Il y a quelques semaines, nous présentions l'appel à contribution, lançant un concours de logo pour l'association. L'idée est de mettre une coup de neuf sur l'identité visuelle de l'association.

Voici les propositions anonymes, sans annotations.
Les commentaires sont ouverts, et le bureau fera une sélection prochainement.

Il reste encore une semaine pour proposer vos contributions, à vos crayons.

1. Logo 1 1. Fond Bleu logo 1
2. Logo 2 2. Fond bleu logo 2
3. Logo 3 3. Fond blanc logo 3
4. Logo 4 fond bleu 4. Logo 4
5. Logo 5 6. Logo 6
7. Logo 7 8. Logo 8
9. Logo 9 10. Logo 10
11. Logo 11 12. Logo 12
13. Logo 13 13. bis Logo 13 bis
14. Logo 14
En page d'accueil : 
Par admin

Les propositions de logo pour l'association

Il y a quelques semaines, nous présentions l'appel à contribution, lançant un concours de logo pour l'association. L'idée est de mettre une coup de neuf sur l'identité visuelle de l'association.

Voici les propositions anonymes, sans annotations.
Les commentaires sont ouverts, et le bureau fera une sélection prochainement.

Il reste encore une semaine pour proposer vos contributions, à vos crayons.

1. Logo 1 1. Fond Bleu logo 1
2. Logo 2 2. Fond bleu logo 2
3. Logo 3 3. Fond blanc logo 3
4. Logo 4 fond bleu 4. Logo 4
5. Logo 5 6. Logo 6
7. Logo 7 8. Logo 8
9. Logo 9 10. Logo 10
11. Logo 11 12. Logo 12
13. Logo 13 13. bis Logo 13 bis
14. Logo 14
En page d'accueil : 
Par Marc Delnatte
Akabia

Gestion de Drupal 8 avec Drupal Console

Comme sur Symfony, Drupal 8 dispose maintenant de son outil Drupal Console. En complément de Drush, Drupal Console permet d’automatiser certaines tâches comme la génération de modules, de blocs, d’entités …

Par Marc Delnatte
Akabia

Gestion de Drupal 8 avec Drupal Console

Comme sur Symfony, Drupal 8 dispose maintenant de son outil Drupal Console. En complément de Drush, Drupal Console permet d’automatiser certaines tâches comme la génération de modules, de blocs, d’entités …

Par vincent59
Vincent Liefooghe

Cartographie rapide avec Drupal

Comme nous le verrons dans cet article, il peut être très rapide d'ajouter des fonctions de cartographie sur un site Drupal, avec quelques modules simples.

Nous allons ici travailler avec une poignée de modules : geolocationctools, views, ip_geoloc et libraries

Quelques étapes seulement sont nécessaires pour y arriver :

  • Activer les modules
  • Créer ou modifier un type de contenu pour ajouter un champ de type "geolocation"
  • Pour aller plus loin, créer une vue reprenant nos différents points de vue

Télécharger et activer le module Geolocation

Avec drush le téléchargement et l'installation se font en deux lignes de commande :

drush dl geolocation
drush en geolocation geolocation_googlemaps geolocation_html5

Ceci active le module principal, ainsi que le "widget" Google Maps et la possibilité de géolocaliser via HTML5.

Création / Modification du contenu

Une fois le module activé, on peut ajouter un champ de type "Geolocation".

On choisit alors le type de "widget" pour la saisie : Google Map (une carte), Latitude / Longitude (2 cases pour la saisie) ou la géolocalisation HTML5.

Voyons le comportement de chacun en saisie...

Latitude / Longitude

Dans ce mode, il faut saisir directement la latitude et longitude. Cela peut être intéressant si on dispose déjà de ces informations.

Géolocalisation HTML 5

Dans ce mode, lorsqu'on coche la case, le navigateur nous propose d'utiliser nos coordonnées.

Ceci n'est évidemment intéressant que dans certains cas, lorsqu'on veut par exemple établir une localisation d'utilisateurs, ou éventuellement avec un site affiché sur mobile.

Google Map

Cette option est beaucoup plus visuelle. Elle s'appuie sur les API de Google Map pour réaliser un premier géocodage, à partir des informations saisies (via le bouton "Get location")

Dès lors, la carte s'affiche avec le marqueur, que l'on peut bouger (ceci se paramètre), afin d'affiner la position directement sur la carte.

Visualisation

De la même manière que pour la saisie, le module propose différents types de formateurs : simple texte, latitude ou longitude en text, carte google map statique, carte google map dynamique, html5 map.
Voyons donc les différents modes de rendu / affichage.

Simple texte

Pas très visuel, on affiche uniquement les données de longitude et latitude.

Par exemple, pour le mont Saint Michel on va trouver quelque chose comme

Geolocation is 48.63559154226376, -1.5108776092529297

Texte simple Latitude ou Latitude

Ceci affiche sous forme de texte la latitude OU la longitude selon le choix défini, de la même manière que précédemment.

Carte Google Map Statique

Ce format d'afichage nous permet déjà de rentrer dans le monde de la cartographie, et d'afficher les coordonnées sur une carte. On dispose de quelques options : la taille de la carte, le format d'image (PNG 8 bits par défaut), le type (route, satellite, hybride) et le niveau de zoom.

Tout ceci est réglable. Par défaut on obtient une carte statique (pas de zoom ni de déplacement).

Carte Google Map dynamique

Nous allons ici un cran plus loin, avec une carte dynamique, sur laquelle on va pouvoir zoomer et scroller. De la même manière que précédemment, on pourra fixer la taille de la carte, le niveau de zoom par défaut et le type de carte (route, satellite).

C'est souvent ce type d'affichage que l'on utilisera avec ce module.

On y retrouve les possibiltiés offertes par Google Map : zoom, déplacement de la carte, choix de l'affichage en mode route ou satellite.

 

 

 

 

HTML5 Image

Cet affichage montre une planisphère, avec la localisation de manière très vague. Personnellement je ne vois pas trop l'intérêt ?

Afficher plusieurs points sur la carte

Pour le moment, nous n'avons pu afficher qu'un seul point sur la carte, celui qui correspond à notre contenu.

Si on veut aller plus loin, il faut passer par le module Views. Il faut cependant ajouter un module qui permettra de faire le lien entre Geolocation et Views : IP Geolocation Views and Maps. Sans cela, il ne sera pas possible d'afficher une seule carte avec tous les contenus.
Commençons par télécharge et activer ces modules (libraries est un pré-requis pour ip_geoloc):

drush dl ctools views ip_geoloc libraries
drush en ctools views views_ui ip_geoloc libraries

Il faut alors créer une vue, qui va afficher les champs de nos contenus. On peut choisir un format "Map (Google API)" :

ainsi que le champ qui contient les données de géolocalisation, le type de marqueur, etc. :

On sauvegarde et on peut alors voir le résultat :

D'autres paramètres sont disponibles dans le module IP Geolocation : choix du marqueur, niveau de zoom et centre de la carte par défaut, etc. C'est un module très riche, et qui peut également s'interfacer avec d'autres modules tels que Leaflet, si l'on ne veut pas dépendre de Google Maps.

On peut aussi afficher des marqueurs différents, sur la base d'une taxonomie liée au contenu, par exemple

Conclusion

Nous avons vu qu'il est possible très rapidement d'ajouter des fonctions de cartographie dans Drupal. Nous verrons dans d'autres articles qu'il existe plusieurs modules permettant d'arriver au même résultat, avec plus ou moins de richesse et de souplesse.

L'avantage du module Geolocation est de proposer une approche tout en un : stockage des coordonnées, widget de saisie et modes d'affichage. Par contre, il n'est pas possible d'avoir une version textuelle de l'adresse en plus de la carte. C'est l'une des limitations de ce module.

Catégorie: 


Tag: 

Par vincent59
Vincent Liefooghe

Cartographie rapide avec Drupal

Comme nous le verrons dans cet article, il peut être très rapide d'ajouter des fonctions de cartographie sur un site Drupal, avec quelques modules simples.

Nous allons ici travailler avec une poignée de modules : geolocationctools, views, ip_geoloc et libraries

Quelques étapes seulement sont nécessaires pour y arriver :

  • Activer les modules
  • Créer ou modifier un type de contenu pour ajouter un champ de type "geolocation"
  • Pour aller plus loin, créer une vue reprenant nos différents points de vue

Télécharger et activer le module Geolocation

Avec drush le téléchargement et l'installation se font en deux lignes de commande :

drush dl geolocation
drush en geolocation geolocation_googlemaps geolocation_html5

Ceci active le module principal, ainsi que le "widget" Google Maps et la possibilité de géolocaliser via HTML5.

Création / Modification du contenu

Une fois le module activé, on peut ajouter un champ de type "Geolocation".

On choisit alors le type de "widget" pour la saisie : Google Map (une carte), Latitude / Longitude (2 cases pour la saisie) ou la géolocalisation HTML5.

Voyons le comportement de chacun en saisie...

Latitude / Longitude

Dans ce mode, il faut saisir directement la latitude et longitude. Cela peut être intéressant si on dispose déjà de ces informations.

Géolocalisation HTML 5

Dans ce mode, lorsqu'on coche la case, le navigateur nous propose d'utiliser nos coordonnées.

Ceci n'est évidemment intéressant que dans certains cas, lorsqu'on veut par exemple établir une localisation d'utilisateurs, ou éventuellement avec un site affiché sur mobile.

Google Map

Cette option est beaucoup plus visuelle. Elle s'appuie sur les API de Google Map pour réaliser un premier géocodage, à partir des informations saisies (via le bouton "Get location")

Dès lors, la carte s'affiche avec le marqueur, que l'on peut bouger (ceci se paramètre), afin d'affiner la position directement sur la carte.

Visualisation

De la même manière que pour la saisie, le module propose différents types de formateurs : simple texte, latitude ou longitude en text, carte google map statique, carte google map dynamique, html5 map.
Voyons donc les différents modes de rendu / affichage.

Simple texte

Pas très visuel, on affiche uniquement les données de longitude et latitude.

Par exemple, pour le mont Saint Michel on va trouver quelque chose comme

Geolocation is 48.63559154226376, -1.5108776092529297

Texte simple Latitude ou Latitude

Ceci affiche sous forme de texte la latitude OU la longitude selon le choix défini, de la même manière que précédemment.

Carte Google Map Statique

Ce format d'afichage nous permet déjà de rentrer dans le monde de la cartographie, et d'afficher les coordonnées sur une carte. On dispose de quelques options : la taille de la carte, le format d'image (PNG 8 bits par défaut), le type (route, satellite, hybride) et le niveau de zoom.

Tout ceci est réglable. Par défaut on obtient une carte statique (pas de zoom ni de déplacement).

Carte Google Map dynamique

Nous allons ici un cran plus loin, avec une carte dynamique, sur laquelle on va pouvoir zoomer et scroller. De la même manière que précédemment, on pourra fixer la taille de la carte, le niveau de zoom par défaut et le type de carte (route, satellite).

C'est souvent ce type d'affichage que l'on utilisera avec ce module.

On y retrouve les possibiltiés offertes par Google Map : zoom, déplacement de la carte, choix de l'affichage en mode route ou satellite.

 

 

 

 

HTML5 Image

Cet affichage montre une planisphère, avec la localisation de manière très vague. Personnellement je ne vois pas trop l'intérêt ?

Afficher plusieurs points sur la carte

Pour le moment, nous n'avons pu afficher qu'un seul point sur la carte, celui qui correspond à notre contenu.

Si on veut aller plus loin, il faut passer par le module Views. Il faut cependant ajouter un module qui permettra de faire le lien entre Geolocation et Views : IP Geolocation Views and Maps. Sans cela, il ne sera pas possible d'afficher une seule carte avec tous les contenus.
Commençons par télécharge et activer ces modules (libraries est un pré-requis pour ip_geoloc):

drush dl ctools views ip_geoloc libraries
drush en ctools views views_ui ip_geoloc libraries

Il faut alors créer une vue, qui va afficher les champs de nos contenus. On peut choisir un format "Map (Google API)" :

ainsi que le champ qui contient les données de géolocalisation, le type de marqueur, etc. :

On sauvegarde et on peut alors voir le résultat :

D'autres paramètres sont disponibles dans le module IP Geolocation : choix du marqueur, niveau de zoom et centre de la carte par défaut, etc. C'est un module très riche, et qui peut également s'interfacer avec d'autres modules tels que Leaflet, si l'on ne veut pas dépendre de Google Maps.

On peut aussi afficher des marqueurs différents, sur la base d'une taxonomie liée au contenu, par exemple

Conclusion

Nous avons vu qu'il est possible très rapidement d'ajouter des fonctions de cartographie dans Drupal. Nous verrons dans d'autres articles qu'il existe plusieurs modules permettant d'arriver au même résultat, avec plus ou moins de richesse et de souplesse.

L'avantage du module Geolocation est de proposer une approche tout en un : stockage des coordonnées, widget de saisie et modes d'affichage. Par contre, il n'est pas possible d'avoir une version textuelle de l'adresse en plus de la carte. C'est l'une des limitations de ce module.

Catégorie: 


Tag: 

Par Marc Delnatte
Akabia

Migration d'un site Drupal 6

Sortie depuis le 19 Novembre dernier, Drupal 8 va très certainement révolutionner le marché du CMS Open source. Mais cela n’est pas sans conséquence, la fin du support de Drupal 6 ( voir Drupal 6 end-of-life announcement) a aussi été annoncé à la date du 24 février 2016.

La problématique de migrer de Drupal 6 vers une version supérieure de Drupal doit donc se poser dès maintenant.

Par Marc Delnatte
Akabia

Migration d'un site Drupal 6

Sortie depuis le 19 Novembre dernier, Drupal 8 va très certainement révolutionner le marché du CMS Open source. Mais cela n’est pas sans conséquence, la fin du support de Drupal 6 ( voir Drupal 6 end-of-life announcement) a aussi été annoncé à la date du 24 février 2016.

La problématique de migrer de Drupal 6 vers une version supérieure de Drupal doit donc se poser dès maintenant.

Par Marc Delnatte
Akabia

8 bonnes raisons de choisir Drupal 8

Drupal 8 est maintenant disponible en version stable depuis le 19 novembre 2015. 2016 s’annonce être une année décisive pour toute la communauté Drupal avec cette nouvelle version. Afin de mieux comprendre ce changement avec l'arrivée de cette nouvelle version, vous trouverez dans cet article un résumé des 8 bonnes raisons pour lesquelles Drupal 8 s’annonce très prometteur pour la réalisation de vos projets digitaux, en offrant une expérience utilisateur plus aboutie.

Par kgaut
Kevin Gautreau

Drupal 8 - Prise en main de Drupal Console, installation et configuration

Drupal 8 est là est avec lui de nombreux outils commencent à arriver, parmi eux : Drupal Console, qui est vise à intégrer l'outil console de Symfony avec Drupal.

La console ne remplace pas (encore?) drush, mais propose un paquet de fonction permettant par exemple de générer des modules, des blocs, des entités, des types de contenus...

Le développement autour de cet outil est très actif et vous pouvez suivre ou participer à son développement sur la page Github du projet : https://github.com/hechoendrupal/DrupalConsole.

Installation de Drupal Console

Pour l'instant la Drupal Console ne fonctionne pas sous les système windows. Sous linux et Mac Os voila comment l'installer (à lancer dans un terminal)

# Téléchargement de l'outil
curl https://drupalconsole.com/installer -L -o drupal.phar

# On le déplace dans un dossier de binaires afin de pouvoir 
# le lancer depuis n'importe où 
# (à noter : on exécute la commande en tant qu'administrateur)
sudo mv drupal.phar /usr/local/bin/drupal

# Attention, c'est la ligne suivante qui défini le nom de la 
# commande que l'on utilisera : "drupal" par défaut
# Si vous souhaitez un autre nom, comme par exemple 
# "drupal-console", lancez à la place :
# sudo mv drupal.phar /usr/local/bin/drupal-console

# On le rend exécutable : 
# (à noter : on exécute aussi la commande en tant qu'administrateur)
sudo chmod +x /usr/local/bin/drupal

Pour vérifier que l'outil est bien disponible, lancez la commande "drupal" depuis un terminal, et vous devriez avoir quelque chose comme ça :

Configuration initiale

Via la commande

drupal init

Drupal console va stocker dans votre répertoire personnel des informations de configuration.

Cette partie n'est absolument pas obligatoire, mais elle vous permettra de modifier un peu son comportement, de passer l'outil en Français par exemple, mais aussi d'avoir de l'auto-complétion.

Dans mon cas la configuration se trouvera dans le fichier /home/kgaut/.console/config.yml dont voici le contenu :

application:
  environment: 'prod'
  language: en
  editor: vim
  temp: /tmp
  remote:
    user: root
    port: 22
    console: /usr/local/bin/drupal
    options: --ansi
    arguments:
    keys:
      public: ~/.ssh/id_rsa.pub
      private: ~/.ssh/id_rsa
      passphrase: ~/.ssh/passphrase.txt
  disable:
    modules:
#      - module_name
#      - module_name
  default:
    commands:
      generate:
        controller:
          options:
#            module: module_name

Si vous souhaitez passer l'outil en Français, changez la ligne 3 de

  language: en

à

  language: fr

Si vous souhaitez bénéficier de l'auto-complétion suivez les retours de la commande et en fonction de votre interpréteur de terminal :

Bash or Zsh: Ajouter la ligne suivante à votre fichier .bashrc ou .zshrc :

source "$HOME/.console/console.rc" 2>/dev/null

Fish: Créez un lien symbolique

ln -s ~/.console/drupal.fish ~/.config/fish/completions/drupal.fish

La configuration est terminée, bravo vous allez pouvoir passer aux choses sérieuses !

Drupal Console & Drupal 8

L'objectif de Drupal Console est donc d’interagir avec un site / une application sous Drupal 8. Dans un terminal, déplacez-vous dans le dossier contenant votre instance du CMS.

Si vous n'avez pas encore installé de site Drupal, vous pouvez utiliser composer comme indiqué dans ce post.

À noter vous devrez être dans le dossier contenant les sources de drupal (exemple le dossier "Web" si vous avez installé Drupal via composer)

Maintenant si vous relancer la commande "drupal" vous devriez avoir un résultat un peu différent :

Pour voir la liste des commandes disponibles avec une explication lancez :

drupal list

Vous vous rendrez rapidement compte que la traduction en Français est loin d'être complète, n'hésitez-pas à participer sur la page du projet.

Génération d'un module

Le mieux étant d’expérimenter, essayez de générer un module :

la commande est drupal generate:module, mais vous pouvez aussi jouer avec l'auto-complétion :

Lancez la commande et laissez-vous guider :

drupal generate:module  

 // Bienvenue sur le générateur de modules Drupal

 Entrez le nom du nouveau module:
 > Mon Module

 Entrez le nom de la machine du module [mon_module]:
 > 

 Entrez le chemin du module [/modules/custom]:
 > 

 Entrez la description du module [My Awesome Module]:
 > Mon super module de test 

 Entrez le nom du paquet [Other]:
 > Kgaut

 Entrez la version core Drupal [8.x]:
 > 

 Définir le module comme une fonctionnalité <em>feature</em> (yes/no) [no]:
 > no

 Voulez-vous ajouter un fichier composer.json file à votre module (yes/no) [yes]:
 > yes

 Voulez-vous ajouter des dépendances à votre module (yes/no) [no]:
 > no


 Confirmez-vous la génération (yes/no) [yes]:
 > yes

Fichiers générés ou mis à jour
 Chemin du site: /media/vhosts/drupal8-test.dev/web
 1 - modules/custom/mon_module/mon_module.info.yml
 2 - modules/custom/mon_module/mon_module.module
 3 - modules/custom/mon_module/composer.json

Et maintenant vous verrez effectivement le module généré dans votre dossier modules/custom/ :

Les modules ne sont pas les seules choses que vous puissiez générer à l'aide de Drupal Console : Types de contenu, Thèmes, Type d'entités...

Vous pouvez aussi générer du contenu factice pour populer vos types de contenus ou vocabulaires.

Mise à jour de Drupal Console

Le développement de Drupal Console est très actif, pour mettre à jour l'outil lancez la commande :

sudo drupal self-update

 

Pages