web-dev-qa-db-fra.com

Comment thème un bundle de paragraphes avec un fichier modèle?

J'utilise le module Paragraphes version 7.x-1.0-beta6 J'ai un bundle avec le nom de la machine: text_buttons

Dans le module des paragraphes, il y a deux suggestions de thèmes:

 paragraphs-items.tpl.php
 paragraphs-item.tpl.php

si je copie paragraphs-items.tpl.php dans mon dossier de modèles sous mon thème, je peux modifier le code et voir les changements refléter l'ensemble du site partout où il y a un ensemble de paragraphes.

Maintenant, quand je vais cibler un paragraph bundle rien ne se passe du tout. J'ai suivi les solutions dans les fils suivants:

Rien ne semble fonctionner. Le module est-il actuellement en panne? dois-je implémenter une sorte de crochet de thème? Je me suis assuré de vider les caches à chaque changement juste pour m'assurer que je verrais le fichier modèle mais cela ne fonctionne pas, je n'ai jamais eu de problème avec la recherche de noms de thèmes auparavant .. La documentation est inexistante pour cela module, et je ne veux vraiment pas creuser dans le code du module pour le moment.

Une autre chose à noter est que paragraphs-item.tpl.php ne fait rien sur mon site Web depuis le module ou mon répertoire de thèmes. il semble que paragraphs-items.tpl.php fonctionne hors de la boîte.

J'ai essayé:

paragraphs-items--text-buttons.tpl.php
paragraphs-items--text_buttons.tpl.php
paragraphs-items-text-buttons.tpl.php
paragraphs-items-text_buttons.tpl.php

field--paragraphs-items--text-buttons.tpl.php
field-paragraphs-items--text-buttons.tpl.php
field--paragraphs-items--text_buttons.tpl.php
field-paragraphs-items--text_buttons.tpl.php

field--paragraphs-items-text-buttons.tpl.php
field-paragraphs-items-text-buttons.tpl.php
field--paragraphs-items-text_buttons.tpl.php
field-paragraphs-items-text_buttons.tpl.php

Quelqu'un a-t-il une idée pourquoi je ne peux pas thème mes paquets de paragraphes?

5
DMAC

J'avais la même question. Voici ce qui a fonctionné pour moi: Drupal 7.41, paragraphes 7.x-1.0-rc4.

  1. Accédez à la fin de votre fichier settings.php et supprimez le signe de hachage pour activer "$ conf ['theme_debug'] = TRUE;" Ou ajoutez la ligne si elle n'est pas présente.
  2. Videz votre cache.
  3. Avec votre navigateur préféré, inspectez la sortie de paragraphe que vous souhaitez remplacer. Vous devriez maintenant avoir des commentaires HTML, juste avant le balisage réel, avec des suggestions de nom de fichier de modèle que vous pouvez utiliser dans votre thème.

Avec ma configuration, les suggestions de nom de fichier de modèle sont:

paragraphs-items--{field name}--{view mode}.tpl.php
paragraphs-items--{field name}.tpl.php
paragraphs-items.tpl.php

Où nom du champ est le nom du champ que vous utilisez lorsque vous affectez le champ de paragraphe à un type de contenu (pas le nom du groupe de paragraphes).

Donc, dans votre cas particulier, si le champ de paragraphe devait être nommé "text-buttons" (nom de la machine "field_text_buttons"), les suggestions de nom de fichier sont:

paragraphs-items--field-text-buttons--full.tpl.php
paragraphs-items--field-text-buttons.tpl.php
paragraphs-items.tpl.php

N'oubliez pas de désactiver le débogage de thème sur votre site de production.

Bonne chance.

9
Proglyphics

Vous étiez tellement proche, mais il n'y a pas de s dans item lors de l'utilisation de bundle.

paragraphes-élément - [nom de l'ensemble] .tpl.php

donc pour vous:

paragraphes-item - text-buttons.tpl.php


Vous pouvez ajouter le mode d'affichage si vous le souhaitez:

paragraphes-item - [bundle-name] - [view-mode] .tpl.php

3
No Sssweat

Si le module Edgy est installé, le préfixe du modèle est edgy-.

Donc, dans votre cas, ce serait edgy-paragraphs-item--text-buttons.tpl.php

Edgy:

Edgy permet aux constructeurs de sites d'afficher les éléments de paragraphe bord à bord. Pour ce faire, il contrôle le placement de la classe .container Bootstrap .

En utilisant une combinaison de paragraphes, Panelizer et Edgy, les constructeurs de sites peuvent créer de puissantes pages de destination bord à bord. Bootstrap n'est pas une exigence et n'importe quel thème peut être utilisé, cependant, assurez-vous simplement d'avoir une classe de conteneur qui centre le contenu.

2
tounivee

Je crois que le thème-paragraphes-item ne fonctionne pas car la fonction de thème pour un paragraphe_item n'est jamais réellement appelée:

Paragraphs inclut une déclaration de modèle de thème pour Paragraph-Item, mais la classe ParagraphItemEntity ne l'utilise jamais, mais transmet le rendu à EntityAPIController, qui utilise #theme = 'entity'.

Ceci est probablement acceptable, mais la déclaration de thème devrait être supprimée si tel est le cas.

du bug dans le module des paragraphes: Les paragraphes n'appellent jamais #theme paragraph_item

2
DrCord