Beaucoup de choses ont changé depuis la folie qui était http://drupal.org/node/1092444 . Heureusement, le thème et la définition de formateurs d'affichage pour les entités de fichier sont désormais beaucoup plus faciles et plus simples.
La documentation suivante concerne Media 2.x et File Entity , bien qu'une grande partie de celle-ci fonctionne avec Media 1.x avec de légères modifications (par exemple, dans Media 1.x, le lien vers la page "Types de fichiers" se trouve dans Configuration au lieu de Structure. ).
Affichage des médias
Les modules File Entity et Media fonctionnent ensemble pour fournir une méthode unifiée de stockage, de gestion et d'affichage des médias dans Drupal. Ils permettent à un utilisateur de créer des champs de fichiers qui peuvent être configurés pour stocker et afficher de nombreux types de médias différents, y compris des images, de la vidéo et de l'audio. entre autres. Afin d'afficher ces différents types de supports, les champs de fichiers nécessitent des formateurs, souvent fournis par le module qui fournit le type de support, et un peu de configuration supplémentaire.
Définitions
J'expliquerai d'abord quelques-unes des parties mobiles, puis j'entrerai dans la personnalisation de l'affichage des fichiers sur un site.
Types de fichier
Les fichiers sont regroupés en types de fichiers . Chaque type de fichier est défini par une liste de types MIME , une manière universelle de spécifier les formats de fichiers sur Internet. Les types de fichiers par défaut sont Application, Audio, Image, Texte, Vidéo et Autre. Il n'existe actuellement aucun moyen de définir de nouveaux types de fichiers dans l'interface utilisateur.
Modes d'affichage
Les modes d'affichage sont utilisés pour indiquer à Drupal 7 (et bientôt 8) qu'un élément de contenu se trouve dans un certain contexte. Le contenu peut ensuite être modifié ou affiché de la manière qui convient le mieux à ce contexte. Deux modes d'affichage que la plupart des gens sont probablement familiers avec la valeur par défaut sont teaser et pleins modes. Les modes d'affichage personnalisés peuvent être définis avec des modules tels que le mode d' affichage d' entité , la suite d'affichage ou dans un module personnalisé avec hook_entity_info_alter()
.
The Good Stuff, ou: Gérer l'affichage de votre champ de fichier
L'affichage d'un champ de fichier est géré par type de fichier . Accédez à Structure -> Types de fichiers. Vous verrez une liste des types de fichiers disponibles avec des liens vers "Gérer les champs", "Gérer l'affichage" et "Gérer l'affichage des fichiers" pour chacun.
Gérer les champs
Le module Entité de fichier permet à tous les fichiers d'être entièrement mis en champ, comme les nœuds et les termes de taxonomie. Tout comme dans la section "Types de contenu", vous pouvez ajouter des champs personnalisés à chaque type de fichier.
Gérer l'affichage
Encore une fois, comme dans "Types de contenu", vous pouvez gérer l'affichage des champs personnalisés sur chaque type de fichier. Cette section ne contrôle pas la mise en forme des fichiers eux - mêmes , mais uniquement l'affichage des champs attachés à l'entité de fichier.
Dans cette section, vous verrez également une bascule pour "Paramètres d'affichage personnalisés". Une fois développé, vous pouvez activer et désactiver les modes d'affichage disponibles pour cette entité. Un mode d'affichage doit être coché ici pour qu'il soit disponible dans "Gérer l'affichage des fichiers". Pour le moment, il est recommandé d'utiliser uniquement les modes d'affichage personnalisés définis par l'utilisateur et les modes d'affichage par défaut suivants; le reste est laissé par l'intégration du module Styles et sera finalement supprimé :
- "Teaser" (actuellement non inclus par défaut. Vous pouvez l'ajouter avec le patch dans le problème ci-dessus ou le définir comme un mode d'affichage personnalisé)
- "Plein"
- "Aperçu" (utilisé dans les contextes d'administration, par exemple, pour les espaces réservés dans les champs WYSIWYG, dans le navigateur multimédia et dans le widget de champ multimédia)
Gérer l'affichage des fichiers
Dans "Gérer l'affichage des fichiers", vous pouvez configurer des formateurs pour vos types de fichiers (oui!). De nombreux modules de fournisseur de médias ajoutent ici leurs propres formateurs; par exemple, Media: Youtube et Media: Vimeo fournissent tous deux un formateur "Preview Image" et "Video".
Les formateurs peuvent être activés et configurés pour chaque mode d'affichage activé dans la section "Gérer l'affichage" de leur type de fichier. Par exemple, un utilisateur peut souhaiter afficher une image d'aperçu Media: Vimeo lorsqu'un nœud est affiché en tant qu'accroche, la vidéo Vimeo lorsque le nœud complet est affiché et une vidéo avec des paramètres de formatage de largeur et de hauteur différents lorsque le nœud est affiché avec un mode d'affichage personnalisé appelé "galerie vidéo". De nombreux formateurs (notamment "Image") permettent à l'utilisateur de sélectionner les styles d'image qu'ils ont définis dans Configuration -> Styles d'image.
Étant donné que plusieurs fournisseurs de médias peuvent utiliser le même champ, les formateurs sont organisés en cascade de haut en bas. Drupal utilisera le premier formateur qui peut être appliqué à la sortie d'un champ. Si un champ vidéo active les formateurs "Media: Youtube Video", "Media: Vimeo Video" et "Large filetype icon" pour le mode d'affichage "Full", Drupal utilisera le formateur Youtube si le type de mime du fichier est video/youtube
, le Vimeo formateur si le type mime est video/vimeo
, et retomber sur la grande icône de type de fichier si le type mime l'est video/{anything else}
.
Configuration du champ de fichier à afficher à l'aide des paramètres "Gérer l'affichage des fichiers"
Pour que le champ de fichier s'affiche à l'aide des formateurs définis dans "Gérer l'affichage du fichier", il doit être configuré pour afficher le "fichier rendu". Accédez à la page "Gérer l'affichage" pour le type de contenu qui contient votre champ de fichier. Choisissez "Fichier rendu" comme format du champ de fichier pour tous les modes d'affichage dans lesquels vous souhaitez utiliser les formateurs définis dans "Gérer l'affichage des fichiers".
Thèmes supplémentaires
Vous pouvez créer des fonctions de thème personnalisées et des fichiers de modèle pour encore plus de contrôle avec les remplacements de hook de thème . Les suggestions de thèmes fournies par le module File Entity sont les suivantes:
file__{file type}
file__{file type}__{view mode}
file__{mime type}
file__{mime type}__{view mode}
file__{file id}
file__{file id}__{view mode}
Remplacez tous les '/' et '__' dans les types MIME par '_' pour les fonctions de thème et '-' pour les fichiers de modèle.
Certains modules de fournisseur de médias les remplacent par leurs propres modèles et suggestions de crochets de thème. Vous pouvez afficher toutes les suggestions de crochets de thème disponibles avec le module Devel Theme Developer , Mothership's Poor Themer's Helper , ou, espérons-le, consulter les documents du fournisseur pour plus d'informations.
Outro
J'espère que cela t'aides. Je prévois d'ajouter cela à la documentation des médias, donc si j'ai raté quelque chose, que je me suis trompé quelque part ou qu'une section a besoin de clarifications, faites-le moi savoir.
Et quelques réponses courtes aux questions spécifiques du PO:
- Media 1.x vs 2.x: même si 2.x est instable, il est aussi fiable que de nombreux modules de version stable sur Drupal.org. Je pense que cela vaut la peine d'utiliser pour les fonctionnalités considérablement améliorées, mais parce qu'il y a tellement de travail en cours sur la prise en charge de la file d'attente des problèmes est lent, et comme avec toute branche de développement, de nouvelles mises à jour peuvent interrompre votre implémentation. Pourtant, je l'utilise en production.
- Les médias sont en développement. Certaines choses ne fonctionnent pas comme vous l'espérez (par exemple, l'intégration WYSIWYG sans image). Mais cela fonctionne toujours mieux dans ce qu'il fait que la combinaison de modules que vous devez installer pour faire ce qu'il fait sans lui. Et ça va mieux.