Drupal 9

De wikilivois
Aller à la navigationAller à la recherche


Installation

#composer create-project drupal/recommended-project:^9 my_site_name_dir
  • Pour choisir le répertoire d'installation

Change directories to my_site_name_dir and edit the composer.json file to suit your needs. For example, to change the sub-directory from 'web' to something else, the keys to modify are the 'extra' sub-keys 'web-root' (under 'drupal-scaffold') and 'installer-paths'.

  • Paramétrer les hôtes de confiance

https://www.drupal.org/docs/installing-drupal/trusted-host-settings

<licode file=site/default/settings.php>

$settings['trusted_host_patterns'] = [
   '^livois\.com$',
   '^.+\.livois\.com$',
];

</licode>

Maintenance

Mise à jour

  • Vérifier la version de drupal
#cd htdocs/www/
#composer show drupal/core | grep versions
  • Mettre à jour à la dernière version
#composer update "drupal/core-*" --with-all-dependencies


Remarques

<licode file=composer.json> "provide": { "drupal/media": "*" }, </licode>

Les modules

Créer une galerie d'albums photos

Installation du module

Modules:

  • Photo Albums (photo_albums)

The only configuration needed for this module is to add an encrytion key and method to your settings.php file. You can choose any encryption method supported by OpenSSL (see below for a list of supported methods - this list is subject to change).

To add these values to your settings.php file, add them as follows: <licode file=settings.php> $settings['two_way_hashing_key'] = '3F4428472B4B6EE0655368566D597133C43677397A576826452948404D635166'; $settings['two_way_hashing_method'] = 'aes-256-ctr'; </licode>

The values above are just examples, but you must make sure you match the key length to the method chosen, in this case aes-256-ctr expects 64 hexadecimal characters.

  • Colorbox
    • il faut télécharger la bibliothèque colorbox dans le répertoire www/libraries/colorbox (qu'il faut créer)
  • Crop
  • Pathauto
  • File field Paths
    • j'utilise ce module pour protéger l'accès aux photos, en les renommant avec un aléas
    • Editer Administration>>Structure>>Types de média>>Modifier>>Photo Album Image et modifier le nom du fichier en [media:mid]_[random:number].[file:ffp-extension-original]

Améliorer le rendu de la vue photo-albums

La page d'albums affiche 4 photos de chaque album qui sont très particulières car très focalisées sur le centre. Cela fait même l'objet d'une remontée.

Pour changer cela, il faut modifier le style d'image: Photo Album Thumbnail (110x110). Il est configuré initialement en "Focal Point Crop 110x110". En le remplaçant par "Mise à l'échelle et recadrage 110×110", le rendu est beaucoup plus acceptable. Il faut réimporter les photos pour que cela fonctionne.

Mieux comprendre le module & la gestion des albums dans Drupal 9

Il est probablement possible de gérer des abums sans le module photo_albums ou en créant un module plus simple.

Photo Albums manque de souplesse : la lecture de son code permet de l'adapter à ses besoins.

Aussi, voici une liste de tables existantes en lien avec les albums photos:

  • node: champs = nid, type=album
  • node_field_data
  • node_field_photos
  • node_field_image
  • file_managed: fid, uuid, uid, filename, uri, filesize
  • file_usage: fid, id
  • media: mid, vid, bundle=photo_album_image, uuid
  • media_field_data: thumbnail_target_id, thumbnail_alt
  • crop: id, vid, type=focal_point, uuid
  • crop_field_data: cid, vid, type, entity_id
  • media_field_data: cid, vid, type, entity_id
  • media_field_media_image
  • media_field_width

A noter les nombreuses tables associées aux révisions.

Google Photos API


  • https://www.drupal.org/docs/contributed-modules/google-api-php-client/google-api-console-configurations
    • Ouvrir la console Google API
    • Créer un projet dans le tableau de bord (ex: Google Photos Livois)
    • Activer l'API : Photos Library API
    • Aller dans l'écran de consentement OAuth
      • Nom de l'application différent du nom du projet- ex: GPhotos Livois
      • Adresse e-mail d'assistance utilisateur
      • Page d'accueil de l'application : la page d'accueil du site
      • Ajouter le nom de domain autorisé: livois.com
      • Adresse e-mail du développeur
    • Créer les identifiants
      • Choisir ID Client OAuth
      • Type d'application: Web application
      • Nom du client: drupal9
      • Redirection: aucune car demande une page https
    • Cela donne un ID Client et une clé secrète qu'il faut ensuite utiliser lors de la configuration du module

Gérer les droits avec Permission by Terms

  • Installer le module Permission by Term
  • Dans Taxonomy, créer un vocabulaire "diffusion", ajouter 2 termes: public & privé
    • Pour le terme public autoriser les rôles utilisateur anonyme, utilisateur authentifié, administrateur
    • Pour le terme privé, autoriser les rôles utilisateur authentifié, adminstrateur
    • Rajouter le vocabulaire dans les structures concernées (exemple: albums photos)

Sécuriser l'envoi de mail

Essais de thèmes

DXPR



Copyright

© 2021-2023 Christophe de Livois

Tête de GNU Vous avez l'autorisation de copier, distribuer et/ou modifier ce document suivant les termes de la GNU Free Documentation License, Version 1.2 ou n'importe quelle version ultérieure publiée par la Free Software Foundation; sans section invariante, sans page de garde, sans entête et sans page finale. Pour plus d'informations consulter le site de l'APRIL.