Pallier les problèmes de sauvegarde des formulaires importants

Lorsque l'on travaille sur un projet Drupal conséquent comportant de nombreuses de fonctionnalités et de nombreuses permissions à contribuer, on observe régulièrement un problème récurrent de sauvegarde sur des formulaires de grande taille. Régulièrement, les changement ne sont pas pris en compte en base de donnés. Des alésa récurrents sur les formulaires de droits /admin/user/permissions et /admin/people/permissions. Comment pallier à ce problème ? C'est le sujet de cet article...

Comment faire son backup WordPress ?

Je ne vous le cache pas, il est très important de sauvegarder régulièrement son site pour éviter de tout perdre en cas de problème, que ce soit accidentel ou suite à un piratage. Dans cet article, je vais donc m'intéresser à la sauvegarde automatique sur WordPress et à la sauvegarde de manière incrémentielle - c'est-à-dire comparer chaque sauvegarde pour juste ajouter et / ou modifier des données. De nombreux plugins WordPress existent pour faire cela et vous pouvez tout à fait les configurer avec ce que vous voulez que la sauvegarde contienne (base de données, fichiers ...).

Présentation du Plugin : Advanced Custom Field

ACF ou Advanced Custom Field est un plugin de surcharge du CMS WordPress très puissant. Son but est simple :  vous permettre en quelques clics de créer des groupes de champs personnalisés (custom fields) que vous pourrez intégrer aux types de contenus, aux templates de page ou encore aux taxonomies pour ne citer que les principaux. Grâce à ce plugin très bien conçu et assez intuitif, vous aurez à disposition un outil puissant permettant la customisation profonde de votre site.

La recherche dans un site Drupal avec SearchAPI

La recherche est un élément primordial dans un site web.

Les moteurs d'indexation tel que SolR ou ElasticSearch ont la puissance nécessaire pour répondre aux demandes fortes de recherche de nos clients et de simplicité d'utilisation des internautes. Cependant, la mise en place d'un tel moteur d'indexation a un coût important. Il existe sous Drupal une solution alternative à moindre coût. Nous utilisons pour cela un moteur d'indexation en base de données.

Ce moteur d'indexation est fournit par le module search_api_db. Cette API permet de mettre en place une recherche FullText et à facette dans un site Drupal en stockant les indexes en base de données.

Réflexion autour du CMS

Dans cet article, je vous propose de vous présenter rapidement les grands principes du CMS puis de vous parler des raisons qui m'ont poussé vers cette orientation particulière. Dans un second temps, nous verrons comment ces CMS s’intègrent dans le contexte de projets réels. Le personnage clef dans la réalisation d’un site web est le développeur. Souvent Ingénieur, nous parlerons des origines du métier.

Pour finir j'aborderai les concepts oubliés du CMS et l'importance du développeur dans cette approche de réalisation de sites web.

Drupal 7 – Réécriture d’url dynamique

logo_drupal

Il arrive parfois que certaines urls soient dynamiques, et que l'on souhaite les réécrire par des urls statiques.

Par rapport à la réécriture d'url statique, que ce soit une page custom ou une page de contenu (cela pourrait réaliser via le backoffice Drupal. Et éventuellement de définir des patterns par type de contenu avec Pathauto), ce sera un peu plus compliqué pour la réécriture d’une url dynamique.

Nous allons voir comment faire cette réécriture.

Import d’un site existant dans aegir depuis un dépôt git

gdo_aegir

Dans cet article, nous allons voir comment importer un site existant dans aegir depuis un dépôt git, mais tout d'abord, voici un petit préambule pour bien comprendre le vocabulaire d'aegir.

Imaginons que vous ayez un site sur monurl.fr qui pointe sur /var/www/monsite (la plateforme) dans votre vhost avec un sous-répertoire /sites/monurl.fr (le site), le tout géré par votre dépôt git sous gitlab.

Pour faire simple aegir appelle un drupal sans base de données, une plateforme et un drupal avec sa base de données, un site :

  • une plateforme au sens aegir, c’est le dépôt git d'un répetoire drupal avec sa branche courante (qu’on ne peut plus changer à postériori)
  • une site au sens aegir c’est : à l'intérieur d'une plateforme, un répertoire dans sites avec le settings.php (généré par aegir, il ne faut pas y toucher), une base de données, un alias, et un vhost