Je ne sais pas pourquoi, mais Views n'ajoute pas de noms de classes CSS "lisibles par l'homme" (comme par exemple le nom de la machine de la vue) aux blocs qu'il crée ( il ajoute uniquement ses classes à la partie "contenu" générée lorsque ajout de classes à la partie " classe CSS " dans l'éditeur de vue (voir les captures d'écran ci-dessous!)).
Il ajoute uniquement les classes habituelles block block-views
et éventuellement contextual-links-region
CSS aux blocs et génère un identifiant unique (pas une classe) comme ceci: block-views-3d8f7966168beeec655c8ead69336789
(car son delta est ce code de hachage généré).
Cela n'a pas de sens d'écrire des règles CSS pour ces classes et id (comme .block-views-3d8f7966168beeec655c8ead69336789 { /* ... */ }
), car ces classes / id peuvent changer lors de la modification du bloc Views.
Comment puis-je ajouter des classes CSS personnalisées dans une implémentation de hook_block_view_alter()
, si je ne peux même pas identifier ces blocs en raison de leur delta de hachage généré?
Je ne veux pas utiliser Block Class , car je pense que c'est comme une surpuissance pour simplement ajouter des classes à un ou deux blocs générés par Views (BTW j'ai vérifié le module, et je sens que la SELECT css_class, module, delta FROM {block_class}
requête est block_class_preprocess_block()
comme une surpuissance, car elle vérifie TOUS les classes ajoutées, même si le bloc est caché ...).
Je voudrais donc le résoudre à partir de mon propre module.
ÉDITER
Un exemple:
Ma vue avec le nom de la machine et les classes CSS ajoutées: