# Installer plusieurs copies d'un thème qui utilise un data-template pour modifier les cartes/profils utilisateur casse les deux.

**URL:** https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098
**Category:** Development
**Created:** [Septembre 7, 2023, 12:03 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098 "2023-09-07T00:03:05Z")
**Posts on this page:** 18
**Page:** 1

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 7, 2023, 12:03 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/1 "2023-09-07T00:03:05Z")

</div>

Je travaillais sur la configuration de [ma copie](https://github.com/Firepup6500/discourse-custom-profile-link) du [Custom Profile Link Component](https://github.com/29th/discourse-custom-profile-link), et j’en avais besoin pour deux liens de site différents. Cependant, actuellement, seuls les utilisateurs qui ont un nom d’utilisateur défini pour les deux sites s’affichent. Comment puis-je m’assurer que les deux s’affichent, que l’autre copie fonctionne ou non ?

---

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 7, 2023, 1:53 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/2 "2023-09-07T01:53:44Z")

</div>

Honnêtement, ce n’est peut-être pas le modèle de données, mais c’est ce que j’ai supposé en y regardant un peu.

---

<div class="post-metadata">

### Author: ![Lilly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/32/575047_2.png) [@Lilly](https://meta.discourse.org/u/Lilly)
#### Post date: [Septembre 7, 2023, 2:40 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/3 "2023-09-07T02:40:00Z")

</div>

Je ne saisis pas tout à fait ce que vous faites, mais peut-être est-ce parce que vous écrivez dans le même modèle handlebars deux fois au lieu d’une seule fois (avec deux champs) ?

---

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 7, 2023, 2:45 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/4 "2023-09-07T02:45:02Z")

</div>

> [@Lilly](#):
>
> peut-être est-ce parce que vous écrivez deux fois dans le même modèle handlebars au lieu d’une seule fois (avec deux champs) ?

C’était aussi mon pressentiment, mais je ne sais pas comment contourner cela.

---

<div class="post-metadata">

### Author: ![Lilly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/32/575047_2.png) [@Lilly](https://meta.discourse.org/u/Lilly)
#### Post date: [Septembre 7, 2023, 2:46 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/5 "2023-09-07T02:46:55Z")

</div>

pouvez-vous ne pas utiliser un seul modèle&nbsp;? devrait pouvoir configurer deux champs dessus, à moins que je ne comprenne mal ce que vous essayez de faire. Avez-vous réussi à faire fonctionner un champ de lien&nbsp;? Si c’est le cas, c’est génial 🙂

---

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 7, 2023, 2:49 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/6 "2023-09-07T02:49:21Z")

</div>

> [@Lilly](#):
>
> ne peux-tu pas utiliser un seul modèle ?

L’un des modèles est pour la carte utilisateur, l’autre est pour le profil utilisateur, donc je ne pense pas.

> [@Lilly](#):
>
> Avez-vous réussi à faire fonctionner un champ de lien ? Si oui, c’est super 🙂

Cela fonctionne lorsque l’une des deux conditions est remplie :

1. Vous avez deux copies, deux champs et l’utilisateur que vous consultez a rempli les deux noms.
2. Vous avez une copie, un champ, et l’utilisateur que vous consultez a rempli le nom.

---

<div class="post-metadata">

### Author: ![Lilly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/32/575047_2.png) [@Lilly](https://meta.discourse.org/u/Lilly)
#### Post date: [Septembre 7, 2023, 2:52 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/7 "2023-09-07T02:52:21Z")

</div>

> [@Firepup650](#):
>
> L’un des modèles est pour la carte utilisateur, l’autre est pour le profil utilisateur, donc je ne pense pas.

oh ok, j’ai mal compris, je pensais que vous mettiez 2 liens différents sur la carte utilisateur. Maintenant, ça a du sens. oui, deux modèles.

---

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 7, 2023, 2:54 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/8 "2023-09-07T02:54:04Z")

</div>

> [@Lilly](#):
>
> Je pensais que vous mettiez 2 liens différents sur la carte utilisateur.

Je le fais, d’une certaine manière, puisque j’en utilise un par copie du composant Thème, ce qui, je le soupçonne, est à l’origine du problème. Je pourrais me tromper cependant.

---

<div class="post-metadata">

### Author: ![Lilly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/32/575047_2.png) [@Lilly](https://meta.discourse.org/u/Lilly)
#### Post date: [Septembre 7, 2023, 3:36 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/9 "2023-09-07T03:36:47Z")

</div>

J’ai donné ce bloc de code à Lola bot sans contexte et voici sa réponse :

> [@Lola bot](#):
>
> Le code JavaScript que vous avez partagé semble être en bon état, en supposant que `settings.custom_profile_link_user_field_id` et `settings.custom_profile_link_debug_mode` sont correctement définis ailleurs dans votre code.
> 
> Ce code enregistre deux classes de connecteur pour les hooks ‘user-profile-primary’ et ‘user-card-metadata’ dans Discourse. Il configure ensuite un composant pour chacun, ajoutant une propriété `customProfileLink` au composant si les champs utilisateur nécessaires sont présents.
> 
> Les modèles Handlebars sont également corrects, rendant conditionnellement des liens si `customProfileLink` est vrai.
> 
> Cependant, sans le contexte du reste de votre code, il est difficile de dire définitivement s’il y a des problèmes. Si vous rencontrez des erreurs spécifiques ou un comportement inattendu, ces détails seraient utiles pour diagnostiquer d’éventuels problèmes.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [Septembre 7, 2023, 10:32 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/10 "2023-09-07T10:32:53Z")

</div>

Êtes-vous en train de dire que vous avez forké le thème, puis que vous incluez votre fork et l’original ? Vous devrez changer toutes les références à ses variables et à l’id passé pour modifier la classe.

---

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 7, 2023, 11:39 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/11 "2023-09-07T11:39:30Z")

</div>

L’original ne fonctionnait plus correctement sur Discourse, j’ai donc créé un fork et l’ai révisé jusqu’à ce qu’il fonctionne. À l’heure actuelle, j’ai installé deux copies de mon fork, qui semblent entrer en conflit l’une avec l’autre.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [Septembre 7, 2023, 11:51 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/12 "2023-09-07T11:51:39Z")

</div>

> [@Firepup650](#):
>
> , j’ai installé deux copies de ma fork, qui semblent entrer en conflit l’une avec l’autre.

C’est ce que je dis. Vous devrez renommer les choses pour qu’elles n’entrent pas en conflit.

Vous voudrez probablement faire en sorte qu’un seul thème fasse les deux choses plutôt que d’avoir deux copies.

---

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 7, 2023, 11:55 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/13 "2023-09-07T11:55:25Z")

</div>

> [@pfaffman](#):
>
> C’est ce que je dis. Vous devrez renommer les choses pour qu’elles n’entrent pas en conflit.

Comment ferais-je cela exactement ? Une idée que j’ai eue était d’ajouter l’ID du TC aux poignées, mais je ne suis pas sûr de la façon dont je le ferais.

> [@pfaffman](#):
>
> Vous voudrez probablement faire en sorte qu’un thème fasse les deux choses plutôt que d’avoir deux copies.

Cela ne briserait-il pas en quelque sorte le cas d’utilisation original de ce composant de thème ?

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [Septembre 7, 2023, 12:05 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/14 "2023-09-07T12:05:58Z")

</div>

> [@Firepup650](#):
>
> Cela ne briserait pas l’objectif initial de ce composant de thème ?

Je ne sais pas, mais je pensais qu’il était déjà cassé ? 😉

S’il ajoute un lien à l’aide d’un champ personnalisé et que vous souhaitez qu’il en ajoute deux, vous l’écririez de manière à ce qu’il puisse être configuré pour inclure n’importe quel nombre de liens vers des champs personnalisés ?

---

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 7, 2023, 12:11 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/15 "2023-09-07T12:11:35Z")

</div>

> [@pfaffman](#):
>
> Je ne sais pas, mais je pensais qu’il était déjà cassé ? 😉

J’ai fait mon fork pour corriger les bugs de l’original, donc j’espère que le mien n’est pas cassé.

> [@pfaffman](#):
>
> S’il ajoute un lien à l’aide d’un champ personnalisé et que vous voulez qu’il en ajoute deux, vous l’écririez de manière à ce qu’il puisse être configuré pour inclure n’importe quel nombre de liens vers des champs personnalisés ?

Cela pourrait fonctionner, mais je ne sais pas comment faire.

---

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 9, 2023, 12:53 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/16 "2023-09-09T00:53:18Z")

</div>

> [@Firepup650](#):
>
> > [@pfaffman](#):
> >
> > Si cela ajoute un lien à l’aide d’un champ personnalisé et que vous souhaitez en ajouter deux, vous l’écririez de manière à ce qu’il puisse être configuré pour inclure n’importe quel nombre de liens vers des champs personnalisés&nbsp;?
> 
> Cela pourrait fonctionner, mais je ne sais pas comment faire.

J’ai commencé à travailler sur cela. Mon premier véritable obstacle ici est le traitement de plusieurs identifiants. Je pense que je le ferais en utilisant une boucle `foreach` (comme je l’ai fait plus haut dans le code), mais je ne sais pas comment faire cela dans Handlebars.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [Septembre 9, 2023, 1:07 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/17 "2023-09-09T01:07:59Z")

</div>

> [@Firepup650](#):
>
> Je ne suis pas sûr de la façon de faire cela dans Handlebars

Cela semble être la bonne voie.

Je ne m’en souviens jamais et je cherche sur Google « boucle for handlebars » et je trouve des exemples.

---

<div class="post-metadata">

### Author: ![Firepup650](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/firepup650/32/465200_2.png) [@Firepup650](https://meta.discourse.org/u/Firepup650)
#### Post date: [Septembre 9, 2023, 2:08 UTC](https://meta.discourse.org/t/installing-multiple-copies-of-a-theme-that-uses-a-data-template-to-modify-user-cards-profiles-breaks-both/278098/18 "2023-09-09T02:08:51Z")

</div>

Après avoir tâtonné pendant environ une heure, je dois dire que je suis bloqué. Ce code :

```plaintext
          {{#each this.customProfileLink as |links|}}
              <a href="{{link.[2]}}{{link.[0]}}" target="_blank">{{link.[1]}}</a>
              <p>{{link}}--{{link.content}}</p>
          {{/each}}

```

_J’ai l’impression_ qu’il devrait fonctionner, mais tout ce que j’ai pu trouver sur `#each` semble varier, et cela ne fonctionne pas. Quelqu’un a-t-il une idée ?

Et celui-ci était doublement de ma faute. :facepalm: J’ai utilisé `links` pour l’élément, et `link` dans le processeur. Et je n’ai pas vérifié le profil utilisateur, seulement la carte utilisateur (le profil utilisateur était correct pour une raison quelconque).
