Essayer de laisser les utilisateurs ajouter des liens de vérification Mastodon, besoin d'aide

Salut, j’essaie d’ajouter un lien de vérification de profil Mastodon aux pages de profil de mes utilisateurs :

Vérification

Vous pouvez vous vérifier comme propriétaire des liens dans les métadonnées de votre profil. Pour cela, le site web lié doit contenir un lien retour vers votre profil Mastodon. Le lien retour doit avoir un attribut rel="me". Le contenu textuel du lien n’a pas d’importance. Voici un exemple :

<a rel="me" href="https://mastodon.social/@BartV">Mastodon</a>

J’ai forké le TC Clickable Social Icon Links on Profile et il affiche bien le lien Mastodon sur les pages de profil utilisateur, mais comme il est rendu sous forme de template handlebars, il n’est pas visible dans la version ‘html/sans javascript’ et le crawler Mastodon ne le verra pas.

J’ai remarqué que la version HTML contient la section suivante :

<div class="user-crawler">
<img src='https://blenderartists.org/user_avatar/blenderartists.org/bartv/45/529382_2.png' alt='bartv' title='bartv' />
<h2 class='username'>bartv</h2>

Y a-t-il un moyen d’ajouter une ligne avec le lien requis à cette section à partir d’un composant de thème ?

2 « J'aime »

Ajoutez-le simplement au pied de page, peut-être. Et si vous ne voulez pas qu’il s’affiche, vous pouvez ajouter du CSS pour masquer cette div.

Ah, je ne me suis pas bien expliqué : les utilisateurs peuvent entrer leur URL Mastodon comme champ personnalisé et j’aimerais ajouter un lien personnel vers leurs propres pages de profil sur mon forum.

1 « J'aime »

En gros, vous suggérez que chaque site puisse vérifier tous ses utilisateurs. Donc, parce que j’ai un compte sur mastodontti.fi, je pourrais ajouter des tags sur mon profil là-bas et être vérifié.

Eh bien… ce n’est pas exactement l’idée derrière la vérification à la manière de Mastodon.

Pas vraiment, tout ce que ça dit, c’est que vous êtes aussi cette personne sur un autre site, ça ne va pas plus loin. GitHub prépare quelque chose de similaire.

Mais bon, je ne suis pas vraiment là pour débattre de ça, j’essaie juste de trouver une solution à ma question :slight_smile:

Pas besoin d’utiliser du CSS. Ce n’est qu’un lien, donc <a rel="me" .. ></a> suffit.

La chose

Oui, mais il doit être accessible à un robot d’indexation. Les scripts Ember/Handlebars ne fonctionneront pas car ils sont rendus par Javascript.

Vous manquez le point. Ensuite, vous pourriez utiliser n’importe quel serveur Mastodon public pour cela. Et vous utilisez une définition assez large d’utilisateur d’un site.

Si, vous l’êtes, car cela dicte si votre solution est correcte.

Et il l’est. Lorsqu’il y a un espace vide ou nul entre la balise A ouvrante et fermante, cela fonctionne très bien, ne s’affiche pas aux visiteurs et n’a pas besoin d’une autre règle CSS.

Désolé, mais ce n’est pas le cas. Regardez le lien sous l’icône Mastodon sur ma page de profil ici :

Si vous inspectez l’élément, vous verrez le code rel=“me”, mais si vous affichez le code source de la page, ou chargez la page en utilisant wget ou un outil similaire, il n’y sera pas car il est généré côté client. Un robot d’exploration ne verra pas ce code.

Si vous le dites…

Je sais que je peux ajouter du HTML au pied de page pour me vérifier moi-même, mais je veux que mes utilisateurs puissent saisir l’URL de leur compte Mastodon comme champ personnalisé, qu’elle soit affichée sur leurs pages de profil et qu’elle serve également à les vérifier.

2 « J'aime »

Pour être sûr que nous sommes sur la même longueur d’onde, essayez-vous de permettre à vos utilisateurs de se vérifier sur Mastodon via votre site Discourse en faisant quelque chose de similaire à ce qui est décrit ici : Get verified on Mastodon with your website | Opensource.com ?

Si c’est le cas, peut-être que demander aux utilisateurs d’ajouter le lien à un article ordinaire, ou à leur biographie, fonctionnerait. L’un ou l’autre de ces éléments apparaîtrait dans la vue du crawler du site. Je ne pense pas qu’il soit possible de remplacer un modèle de crawler à partir d’un composant de thème : Header Submenus - #134 by awesomerobot.

Le problème que je rencontre est que Discourse supprime automatiquement l’attribut rel="me" des liens. À moins qu’il n’y ait une solution de contournement, l’attribut pourrait devoir être ajouté au AllowLister via un plugin. Je ne suis pas au courant de l’intégration Discourse/Mastodon, mais cela pourrait être utile pour d’autres sites.

1 « J'aime »

Ah. C’est différent.

Je pense que si vous l’avez configuré pour s’afficher sur la page de profil (afin qu’il soit disponible sur la page), vous pouvez utiliser un composant de thème pour l’ajouter à une sortie de plugin, puis ajouter du CSS pour masquer son affichage par défaut.

C’est tout ce que je sais sans ouvrir un éditeur et examiner le code existant. Mais c’est peut-être un indice suffisant.

Je l’ai fait, mais le problème demeure que (je pense) les composants de thème sont toujours rendus côté client, et leur sortie ne sera pas visible par les robots d’exploration. Je vais mettre cette idée de côté pour l’instant, ça me casse la tête :slight_smile:

Oh ! Désolé. Je ne pouvais pas faire attention à tout cela en même temps. Oui. Vous aurez besoin du plugin pour l’ajouter à la version non javascript, vous devrez donc remplacer le modèle rails, je suppose.

1 « J'aime »