Versuche, Benutzern das Hinzufügen von Mastodon-Verifizierungslinks zu ermöglichen, brauche etwas Hilfe

Hallo, ich versuche, einen Verifizierungslink für mein Mastodon-Profil zu meinen Benutzerprofilseiten hinzuzufügen:

Verifizierung

Sie können sich selbst als Besitzer der Links in Ihren Profilmetadaten verifizieren. Dazu muss die verlinkte Website einen Link zurück zu Ihrem Mastodon-Profil enthalten. Der Link zurück muss ein rel="me"-Attribut haben. Der Textinhalt des Links spielt keine Rolle. Hier ist ein Beispiel:

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

Ich habe das TC von Clickable Social Icon Links on Profile geforkt und es zeigt den Mastodon-Link gut auf den Benutzerprofilseiten an, aber da es als Handlebars-Vorlage gerendert wird, ist es in der Version “HTML/ohne JavaScript” nicht sichtbar und der Mastodon-Crawler wird es nicht sehen.

Ich habe bemerkt, dass die HTML-Version den folgenden Abschnitt hat:

<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>

Gibt es eine Möglichkeit, dieser Sektion von einer Theme-Komponente aus eine Zeile mit dem erforderlichen Link hinzuzufügen?

2 „Gefällt mir“

Fügen Sie es einfach in die Fußzeile ein, vielleicht. Und wenn Sie nicht möchten, dass es angezeigt wird, können Sie CSS hinzufügen, um diese Div auszublenden.

Ah, ich habe mich nicht gut ausgedrückt: Benutzer können ihre Mastodon-URL als benutzerdefiniertes Feld eingeben und ich möchte ihnen einen persönlichen Link zu ihren eigenen Profilseiten in meinem Forum hinzufügen.

1 „Gefällt mir“

Im Grunde schlagen Sie vor, dass jede Website alle ihre Benutzer verifizieren kann. Da ich also ein Konto bei mastodontti.fi habe, könnte ich dort Tags in meinem Profil hinzufügen und verifiziert werden.

Nun… das ist nicht genau die Idee hinter der Verifizierung auf die Mastodon-Art.

Nicht wirklich, alles, was es sagt, ist, dass du auch diese Person auf einer anderen Website bist, es geht nicht darüber hinaus. GitHub bereitet etwas Ähnliches vor.

Aber anyway, ich bin nicht wirklich hier, um das zu diskutieren, ich versuche nur, eine Lösung für meine Frage zu finden :slight_smile:

Keine Notwendigkeit, CSS zu verwenden. Es ist nur ein Link, also ist <a rel="me" .. ></a> ausreichend.

Die Sache

Ja, aber es muss für einen Crawler zugänglich sein. Ember/Handlebars-Skripte funktionieren nicht, da sie von Javascript gerendert werden.

Sie verfehlen den Punkt. Dann könnten Sie jeden öffentlichen Mastodon-Server dafür nutzen. Und Sie verwenden eine ziemlich weite Definition eines Benutzers einer bestimmten Seite.

Doch, das sind Sie, denn es bestimmt, ob Ihre Lösung richtig ist.

Und das ist es auch. Wenn zwischen dem öffnenden und schließenden A-Tag etwas Leeres oder Nichtiges steht, funktioniert es einwandfrei, wird Besuchern nicht angezeigt und benötigt keine weitere CSS-Regel.

Entschuldigung, aber das ist nicht der Fall. Schauen Sie sich den Link unter dem Mastodon-Symbol auf meiner Profilseite hier an:

Wenn Sie das Element inspizieren, sehen Sie den rel=“me”-Code, aber wenn Sie den Seitenquelltext anzeigen oder die Seite mit wget oder einem ähnlichen Tool laden, ist er nicht vorhanden, da er clientseitig generiert wird. Ein Crawler wird diesen Code nicht sehen.

Wenn du das sagst…

Ich weiß, dass ich HTML zur Seitenfußzeile hinzufügen kann, um nur mich selbst zu verifizieren, aber ich möchte, dass meine Benutzer ihre Mastodon-URL als benutzerdefiniertes Feld eingeben, dass sie auf ihren Profilseiten angezeigt wird und dass sie diese auch zur Verifizierung verwenden können.

2 „Gefällt mir“

Um sicherzustellen, dass wir auf dem gleichen Stand sind, versuchen Sie, Ihren Benutzern zu ermöglichen, sich auf Mastodon über Ihre Discourse-Site zu verifizieren, indem Sie etwas Ähnliches tun, wie hier beschrieben: Get verified on Mastodon with your website | Opensource.com?

Wenn ja, wäre es vielleicht eine Möglichkeit, Benutzer aufzufordern, den Link entweder zu einem normalen Beitrag oder zu ihrer Biografie hinzuzufügen. Beides würde in der Crawler-Ansicht der Website angezeigt werden. Ich glaube nicht, dass es möglich ist, eine Crawler-Vorlage von einer Theme-Komponente zu überschreiben: Header Submenus - #134 by awesomerobot.

Das Problem, auf das ich stoße, ist, dass Discourse das rel="me"-Attribut automatisch aus den Links entfernt. Sofern es keine Umgehung dafür gibt, müsste das Attribut über ein Plugin zu AllowLister hinzugefügt werden. Ich bin nicht auf dem neuesten Stand der Discourse/Mastodon-Integration, aber dies könnte für andere Websites nützlich sein.

1 „Gefällt mir“

Ah. Das ist anders.

Ich denke, wenn du es so eingestellt hast, dass es auf der Profilseite angezeigt wird (damit es auf der Seite verfügbar ist), dann kannst du eine Theme-Komponente verwenden, um es an einem Plugin-Outlet hinzuzufügen, und dann etwas CSS hinzufügen, um die Standardanzeige auszublenden.

Das ist alles, was ich weiß, ohne einen Editor aufzurufen und mir vorhandenen Code anzusehen. Aber vielleicht ist es ein ausreichender Hinweis.

Ich habe das getan, aber das Problem bleibt, dass (ich glaube) Theme Components immer clientseitig gerendert werden und ihre Ausgabe für Crawler nicht sichtbar ist. Ich werde diese Idee vorerst beiseitelegen, sie zermartert mir das Gehirn :slight_smile:

Oh! Entschuldigung. Ich konnte mich nicht auf alles gleichzeitig konzentrieren. Ja. Sie benötigen das Plugin, um es zur Nicht-JavaScript-Version hinzuzufügen, daher müssen Sie wahrscheinlich die Rails-Vorlage überschreiben.

1 „Gefällt mir“