Enregistrer votre oeuvre d'art sur Drupal 7
À quoi la fonction artwork_save() ressemble-t-elle ? Comme la fonction artwork_load(), il s'agit simplement d'un enveloppeur fin.
À quoi la fonction artwork_save() ressemble-t-elle ? Comme la fonction artwork_load(), il s'agit simplement d'un enveloppeur fin.
Précedement dans un article parlant d'un cas concret de mauvaise gestion de cache j'ai évoqué le hook_hook_info() ; En continuant ma lecture de code sur le sujet, je me suis aperçu d'une autre erreur de gestion de cache de la part des développeurs du core : les cache inutiles.
Drupal Commerce est conçu pour que l'ajout de produit se fasse via le back office en utilisant la fonction « Ajouter un produit » (« Add product » en anglais).
Grâce à des modules tels que Commerce Bulk Product Creation il est possible de créer des produits en série avec ses différentes déclinaisons.
Mais il est également possible d'ajouter ses articles via un module custom et un fichier.
Dans un article précédent je vous ai présenté la gestion des caches d'une manière assez théorique Je ne pensais pas que ce matin même j'allais tomber sur un très bon exemple d'une mauvaise gestion de cache, et je pensais encore moins la trouver dans le core. Cet article va présenter, d'une façon aussi objective que possible, l'anatomie de ce cache particulier, et pourquoi même si l'idée était bonne théoriquement, elle s'est en réalité avérée catastrophique dans mon cas d'utilisation. Je vais dans les paragraphes suivants qualifier cette gestion de cache de réel bug.
Sous Drupal 7 (et déjà sous Drupal 6), il est très facile de coder une vue paginée sans passer par l'usine à gaz Views, et ainsi d'avoir le markup que l'on souhaite, avec une requête SQL optimisée, qui ne mette pas trois plombes à s'exécuter.
Pour ça, il suffit d'avoir 2-3 connaissances en PHP et SQL, et de suivre ce tuto :
Premièrement, on écrit sa requête SQL (pour l'exemple je vais faire simple, sélectionner les "title" de la table "node", avec un order by sur le paramètre "sticky") :
$query = db_select('node','n'); $intermediate = $query->fields('n',array('title')) ->orderBy('n.sticky', 'DESC');
Ensuite, je rajoute la condition du pager dans la requête (20 résultats par page) :
Drupal est un outil pouvant se révéler puissant par son aspect modulaire, malheureusement de l'abus de cette modularité naît souvent des problèmes dont la nuisance peut facilement effacer la valeur ajoutée des avantages de l'outil. L'un des plus important est l'aspect performance. Au fil des années Drupal a grossit, pour, à l'heure de Drupal 7, peser plus de 200 000 lignes de codes. Parmis ces lignes figurent non loin de 70 000 lignes d'un design historique et poussiéreux, tout droit héritées de Drupal 6 et précédents.
Voici un article que j’aurais aimé lire quand j’ai commencé Drupal, quelques conseils simples permettant d’aborder sereinement le CMS et sa communauté. Aujourd’hui ces étapes tombent sous le sens pour moi mais vu l’essor que rencontre la version 7 de Drupal je me dis qu’il y en a d’autres à qui cela pourrait servir.
Avoir un compte sur Drupal.org c’est essentiel. Cela vous permettra en cas de besoin de poster une question, de proposer un patch ou encore d’apporter une nouvelle fonctionnalité à un module. Pour moi la création de votre compte est la première étape, c’est celle qui vous mettra en relation avec la communauté.
Si vous utilisez Drupal, vous n’êtes pas sans savoir que la version 8 est en cours de réalisation. Sachez qu’ils existe plusieurs initiatives regroupant chacune les changements majeurs à venir pour Drupal. Je vous conseille donc de faire le tour des ces initiatives et de les suivre attentivement. Libre à vous si vous vous en sentez l’âme de contribuer et d’apporter votre petite graine à l’une d’entre elle. Vous trouverez toutes les initiatives D8 à cet endroit.
Il parait que c’est en forgeant qu’on devient forgeron, en tout cas une chose est sûre, plus vous testerez de modules, d’outils ou de méthodologie, plus vous apprendrez. A mon sens il est important de vous créer un référentiel de modules, chaque module devant être générique et réutilisable pour vos projets.
Lorsque je m’attaque à une nouvelle techno ou lorsque je m’intéresse à un nouveau sujet je procède toujours de la même façon, j’essaie d’identifier des acteurs majeurs, des aguerris qui savent de quoi ils parlent, je m’abonne aux flux de leurs blogs, à leurs comptes Twitter et je lis ce qu’ils partagent. Après il ne reste qu’à maintenir cette liste de blogs à jour, en supprimant ceux qui ne produisent pas de contenus de qualité et en ajoutant de nouveaux. Ainsi vous obtenez la crème de la crème et cela me permet de rester au courant des dernières nouveautés, même si je suis quelques temps sans travailler sur le sujet.
Pour vous, voici quelques liens à suivre :
Une autre façon d’apprendre par la lecture est d’acheter quelques livres qui traitent du sujet. Cette solution est plus onéreuse qu’une recherche sur le web mais est souvent plus efficace lorsqu’on cherche un point précis (pour peu que ce soit un bon bouquin).
Une bonne façon pour être en contact directe avec la communauté est de venir la rencontrer sur les channels IRC #drupal et #drupal-fr. Ici vous aurez les membres les plus actifs de la communauté, ceux qui arpentent les méandres de Drupal depuis plusieurs années. Pour moi c’est le meilleur moyen de trouver de l’aide, de récupérer de précieux conseils ou d’obtenir des pistes à creuser. Néanmoins, n’attendez pas de ces personnes connectées qu’elles fassent le travail à votre place et qu’elles vous prennent par la main pour vous montrer quoi et comment faire, tout ce qu’elles pourront faire c’est vous aiguiller. Plus d’info sur cette page : drupal.org/irc
Sortez! Allez à la rencontre de la communauté qui se trouve près de chez vous. Rien ne vaut les rencontres que vous pourrez faire lors d’évènements de type barcamp, meetup ou drink. Vous en apprendrez bien plus lors de ces rencontres que derrière votre ordinateur à chercher sur Google. Sachez qu’il existe plusieurs groupes utilisateurs Drupal répartis dans les villes de Lille, Lyon, Nantes, Paris et Toulouse. Vous trouverez toutes les informations nécessaires sur la page officielle Drupal France.
Le dernier point et pas des moindres, contribuer, participer activement à améliorer et enrichir Drupal. Lorsqu’on parle de contribution on pense tout de suite à la réalisation de module. C’est vrai, mais il n’y a pas que ça, il existe d’autres possibilités comme par exemple, soumettre ou tester un patch, écrire les tests unitaires d’un module, rédiger de la documentation, ou encore traduire des modules. Un conseil si vous voulez participer, ne restez pas focalisé sur la création de module, pour moi faire de la traduction c’est aussi méritant. Bref les possibilités sont vastes pour participer à l’écosysteme de Drupal, à vous de trouvez la votre.
Cet article 7 Choses à faire pour améliorer vos compétences sur Drupal est apparu en premier sur Julien Dubreuil.
Voici un article que j’aurais aimé lire quand j’ai commencé Drupal, quelques conseils simples permettant d’aborder sereinement le CMS et sa communauté. Aujourd’hui ces étapes tombent sous le sens pour moi mais vu l’essor que rencontre la version 7 de Drupal je me dis qu’il y en a d’autres à qui cela pourrait servir.
Avoir un compte sur Drupal.org c’est essentiel. Cela vous permettra en cas de besoin de poster une question, de proposer un patch ou encore d’apporter une nouvelle fonctionnalité à un module. Pour moi la création de votre compte est la première étape, c’est celle qui vous mettra en relation avec la communauté.
Si vous utilisez Drupal, vous n’êtes pas sans savoir que la version 8 est en cours de réalisation. Sachez qu’ils existe plusieurs initiatives regroupant chacune les changements majeurs à venir pour Drupal. Je vous conseille donc de faire le tour des ces initiatives et de les suivre attentivement. Libre à vous si vous vous en sentez l’âme de contribuer et d’apporter votre petite graine à l’une d’entre elle. Vous trouverez toutes les initiatives D8 à cet endroit.
Il parait que c’est en forgeant qu’on devient forgeron, en tout cas une chose est sûre, plus vous testerez de modules, d’outils ou de méthodologie, plus vous apprendrez. A mon sens il est important de vous créer un référentiel de modules, chaque module devant être générique et réutilisable pour vos projets.
Lorsque je m’attaque à une nouvelle techno ou lorsque je m’intéresse à un nouveau sujet je procède toujours de la même façon, j’essaie d’identifier des acteurs majeurs, des aguerris qui savent de quoi ils parlent, je m’abonne aux flux de leurs blogs, à leurs comptes Twitter et je lis ce qu’ils partagent. Après il ne reste qu’à maintenir cette liste de blogs à jour, en supprimant ceux qui ne produisent pas de contenus de qualité et en ajoutant de nouveaux. Ainsi vous obtenez la crème de la crème et cela me permet de rester au courant des dernières nouveautés, même si je suis quelques temps sans travailler sur le sujet.
Pour vous, voici quelques liens à suivre :
Une autre façon d’apprendre par la lecture est d’acheter quelques livres qui traitent du sujet. Cette solution est plus onéreuse qu’une recherche sur le web mais est souvent plus efficace lorsqu’on cherche un point précis (pour peu que ce soit un bon bouquin).
Une bonne façon pour être en contact directe avec la communauté est de venir la rencontrer sur les channels IRC #drupal et #drupal-fr. Ici vous aurez les membres les plus actifs de la communauté, ceux qui arpentent les méandres de Drupal depuis plusieurs années. Pour moi c’est le meilleur moyen de trouver de l’aide, de récupérer de précieux conseils ou d’obtenir des pistes à creuser. Néanmoins, n’attendez pas de ces personnes connectées qu’elles fassent le travail à votre place et qu’elles vous prennent par la main pour vous montrer quoi et comment faire, tout ce qu’elles pourront faire c’est vous aiguiller. Plus d’info sur cette page : drupal.org/irc
Sortez! Allez à la rencontre de la communauté qui se trouve près de chez vous. Rien ne vaut les rencontres que vous pourrez faire lors d’évènements de type barcamp, meetup ou drink. Vous en apprendrez bien plus lors de ces rencontres que derrière votre ordinateur à chercher sur Google. Sachez qu’il existe plusieurs groupes utilisateurs Drupal répartis dans les villes de Lille, Lyon, Nantes, Paris et Toulouse. Vous trouverez toutes les informations nécessaires sur la page officielle Drupal France.
Le dernier point et pas des moindres, contribuer, participer activement à améliorer et enrichir Drupal. Lorsqu’on parle de contribution on pense tout de suite à la réalisation de module. C’est vrai, mais il n’y a pas que ça, il existe d’autres possibilités comme par exemple, soumettre ou tester un patch, écrire les tests unitaires d’un module, rédiger de la documentation, ou encore traduire des modules. Un conseil si vous voulez participer, ne restez pas focalisé sur la création de module, pour moi faire de la traduction c’est aussi méritant. Bref les possibilités sont vastes pour participer à l’écosysteme de Drupal, à vous de trouvez la votre.
Sponsorisé par Commerce Guys, ce webinar propose une approche des problématiques Responsive sur le module Drupal Commerce. Par ailleurs, le site http://www.drupalcommerce.org/ a fait peau neuve!
Le but de cet article est de créer un bloc directement dans un module en utilisant les fonctions de l’API Drupal 7.
Maintenant que nos types d'œuvre d'art disposent d'un hook, nous devons pouvoir les créer. Modélisons à nouveau le mode de fonctionnement des nœuds et ajoutons les entrées suivantes à notre hook de menu...
Today, I was Today, the main concern for me was a bunch of issues about core handling transactions and some others module related issues. Along those, an old one was stalling where I took the habit to argue louder, entitled Add a persistent key/value store for non-configuration state. I will name this issue The One.enjoying a boring and alone day, after a incomplete night spent in a very light sleeping state. When I started my day, as always, I turned on my screen and started looking up at Drupal core issue queues, int order to see if some answers magically spawned during the night : as always, U.S. people are the most active while we europeans are deeply asleep.
Ces modules sont à installer sans réserve pour disposer d'une base solide en terme de gestion, d'administration, d'interface utilisateur, et pouvoir ainsi commencer à travailler votre site Drupal sur ses fonctionnalités et contenus proprement dit.
Ce script jQuery permet d'égaliser la hauteur d'un groupe de blocs ou de colonnes, ou de n'importe quels éléments disposant d'une classe css commune.
Cette vue permet d'afficher tous les contenus ayant le(s) même(s) terme(s) de taxonomy que le contenu affiché.
Cette vue permet d'afficher tous les contenus ayant le(s) même(s) terme(s) de taxonomy que le contenu affiché.