web-dev-qa-db-fra.com

Meilleures pratiques pour les mises en page

J'essaie de comprendre quelles sont les meilleures pratiques pour les mises en page dans Drupal. De nombreuses pages ont plusieurs éléments différents comme le contenu principal, une image d'en-tête, etc. Je ne cherche pas à créer une "page de base" ou quelque chose de similaire (c'est-à-dire un nœud pour la page entière).

Est-il bon d'utiliser des panneaux pour chaque page et d'y déposer des blocs? Je pourrais supprimer des vues, éventuellement un nœud, un formulaire de contact, etc ...

19
Frankie O'Rourke

Panels est un excellent module, mais il peut également être complexe et cela peut prendre un certain temps avant de le comprendre complètement. Si vous souhaitez utiliser des panneaux pour chaque page, le module Panels Everywhere est un projet intéressant.

Display Suite est un autre grand projet qui fournit des dispositions plus flexibles.

Bien que les gens aient tendance à utiliser des panneaux ou DS, ils ne sont pas des concurrents. Ils peuvent même être utilisés ensemble comme vous pouvez le lire sur le blog de l'auteur/mainteneur de DS: tilisation des panneaux sur les modes d'affichage dans Drupal 7 .

11
marcvangend

Les vues et les panneaux sont une bonne possibilité mais avec l'utilisation d'un excellent cadre comme 960gs !

2
gbwebservice

Oui, les panneaux vous donnent des dispositions dans lesquelles vous pouvez déposer des éléments.

Panelizer est le module de panneaux le plus simple qui ajoute simplement un panneau à vos nœuds préexistants. (Node Panels est obsolète, mais ce fait n'est pas largement souligné.)

Donc, utilisez le système de nœuds standard, mais "panélisez" les nœuds si ou quand vous en avez besoin.

0
Tom Stermitz

Si vous cherchez à réutiliser la mise en page pour plus d'une page, la suite d'affichage avec un tas de champs semble être le meilleur choix.

Si vous voulez des mises en page individuelles par page, alors les panneaux peuvent être la bonne chose.


Si vous voulez ce dernier, mais avez peur des panneaux (comme moi), alors vous pouvez essayer autre chose. (de https://drupal.stackexchange.com/a/90744/2974 )

Modules:

Comment?

  • Créez un type de noeud "frontpage".
  • Ajoutez un champ de référence de bloc à valeurs multiples avec le widget "Liste de sélections multiples".
  • Configurez certains types de beans pour autoriser différents types de boîtes fantaisie pouvant être placées en première page.
  • Utilisez la référence de bloc dans un bean pour les présentations imbriquées.
  • L'un des types de bean pourrait avoir une référence d'entité à valeurs multiples, par exemple référencer un tas de produits (et les faire trier). Je préfère généralement cela à nodequeue.
  • Utilisez Display suite pour définir la façon dont chaque bean et la page d'accueil elle-même doivent être affichés.
  • Utilisez Afficher les modèles de champs personnalisés de la suite pour avoir des boîtes décorées autour de chaque bean/bloc dans la référence de bloc, ou chaque produit, etc. Cochez hook_ds_field_theme_functions_info () . Ce truc est puissant et génial!
  • Dites à l'éditeur client/contenu d'utiliser les liens contextuels pour modifier des beans individuels.
  • De plus, vous pouvez avoir des blocs Vues à utiliser dans la référence de bloc.
  • Le formulaire d'entité en ligne peut être utile, mais je ne l'ai pas essayé dans cette combinaison. Ce sont des devoirs :)

La stratégie est que tout ce qui est unique à une page doit être un bloc (ou une instance de bean). Nous pouvons nous le permettre car ces blocs ne polluent aucune région thématique.

Cela devrait vous donner du matériel pour jouer avec ..
Des questions plus détaillées doivent être discutées dans des questions d'échange de pile dédiées, car c'est assez large.

0
donquixote