Beschreibung

Steig mit ActivityPub ins Fediverse ein und erreiche mit deinem Blog ein größeres Publikum. Gewinne Follower, verteile Updates und sammle Kommentare aus der diversen Nutzerschaft von ActivityPub-kompatiblen Plattformen.

Mit installiertem ActivityPub-Plugin funktioniert dein WordPress-Blog selbst als föderiertes Profil, dazu kommen Profile für jeden Autor. Wenn deine Website beispielsweise example.com ist, dann findet man das blogweite Profil unter @example.com@example.com. Autoren wie Jane und Bob wiederum hätten ihre individuellen Profile jeweils unter @jane@example.com und @bobz@example.com.

Ein Beispiel: Ich gebe dir meinen Mastodon-Profilnamen @pfefferle@mastodon.social. Du suchst danach, findest mein Profil und klickst auf „Folgen“. Jetzt erscheint jeder Beitrag von mir auf deiner Startseite. Auf die gleiche Weise kannst du mit dem ActivityPub-Plugin Janes Profil bei @jane@example.com finden und folgen.

Sobald du Janes Profil @jane@example.com folgst, landet jeder Beitrag, den sie auf example.com erstellt, auf deiner Startseite. Und wenn du dem blogweiten Profil @example.com@example.com folgst, erhältst du Updates von allen Autoren.

Hinweis: Wenn deinem Autor oder Blog niemand folgt, bleiben deine Beiträge unsichtbar. Ob das Plugin funktioniert, findest du am leichtesten heraus, indem du deinem eigenen Profil folgst. Wenn du bereits ein Mastodon-Profil hast, beginne, indem du deinem neuen folgst.

Das Plugin funktioniert mit den folgenden getesteten föderierten Plattformen, es könnte aber noch mehr geben, mit denen es ebenfalls klappt:

Einige Dinge solltest du beachten:

  1. Das blogweite Profil funktioniert nur für Websites mit aktivierten Umschreibungsregeln. Wenn deine Website Umschreibungsregeln nicht aktiviert hat, könnten die autorenspezifischen Profile trotzdem funktionieren.
  2. Viele Einzelautoren-Blogs haben ihre Autoren-Profilseiten deaktiviert oder über ein SEO-Plugin wie Yoast oder Rank Math umgeleitet. Das geschieht normalerweise, um Duplicate Content mit der Homepage des Blogs zu vermeiden. Wenn deine Autorenseite auf diese Weise deaktiviert wurde, dann funktionieren die Autorenprofile von ActivityPub bei dir nicht. Stattdessen kannst du die Autorenprofilseite wieder einschalten und im SEO-Plugin die Option wählen, die Autorenseite nicht zu indexieren. Das löst Duplicate-Content-Probleme mit Suchmaschinen und ermöglicht, dass die Autorenprofile von ActivityPub funktionieren.
  3. Sobald ActivityPub installiert ist, sind nur ab dann neu veröffentlichte Beiträge im Fediverse verfügbar. Und auch wenn du ActivityPub schon länger einsetzt, sieht, wer dir neu folgt, nur die Beiträge, die du von diesem Zeitpunkt an neu publizierst. Früher geschriebene Beiträge sieht er niemals auf der Startseite. Das funktioniert ganz ähnlich wie beim Abonnieren eines Newsletters. Wenn du einen Newsletter bestellst, bekommst du nur künftige E-Mails, aber nicht die alten archivierten. Folgt jemand deiner Website mit ActivityPub, so empfängt er nur die neuen Beiträge, die du ab dann veröffentlichst.

Wie also läuft das ab?

  1. Installiere das ActivityPub-Plugin.
  2. Geh zu den Einstellungen des Plugins und passe diese nach Belieben an. Wenn du fertig bist, klicke auf den Speichern-Button.
  3. Stelle sicher, dass die Autoren-Profilseite deines Blogs aktiv ist, wenn du Autoren-Profile verwendest.
  4. Besuche Mastodon oder jede andere föderierte Plattform, suche nach deinem Profil und folge diesem. Dein neues Profil sieht entweder aus wie @your_username@example.com oder wie @example.com@example.com, danach solltest du also suchen.
  5. Veröffentliche einen neuen Beitrag in deinem Blog.
  6. Prüfe in Mastodon, ob der neue Beitrag auf deiner Startseite erscheint.

Beachte bitte, dass es bis zu rund 15 Minuten dauern kann, bis der neue Beitrag in deinem föderierten Feed erscheint. Das liegt daran, dass die Nachrichten über einen verzögerten cron an die föderierten Plattformen gesendet werden. Das soll verhindern, dass das Veröffentlichen für Benutzer mit einer Menge Follower unterbrochen wird. Es ist also kein Grund zur Sorge, wenn er nicht unmittelbar auftaucht. Lass ihm etwas Zeit. In den meisten Fällen wird er binnen weniger Minuten erscheinen. Dann weißt du, dass alles wie erwartet funktioniert.

Blöcke

Dieses Plugin unterstützt 2 Blöcke.

  • Follow me on the Fediverse Display your Fediverse profile so that visitors can follow you.
  • Fediverse Followers Display your followers from the Fediverse on your website.

Installation

Folge den normalen Anweisungen für die WordPress-Plugin-Installation.

Automatische Plugin-Installation

So fügst du ein WordPress-Plug-in mit dem integrierten Plugin-Installer hinzu:

  1. Gehe zu Plugins > Installieren.
  2. Gib „activitypub“ in die Box Suche Plugins ein.
  3. Suche das WordPress-Plugin, das installiert werden soll.
    1. Klicke auf Details für weitere Informationen zum Plugin und Anleitungen, die du für die Einrichtung des Plugins vielleicht drucken oder speichern möchtest.
    2. Um das WordPress-Plugin zu installieren, klicke auf Jetzt installieren.
  4. Der resultierende Installationsbildschirm zeigt die Installation als erfolgreich an oder weist auf Probleme während der Installation hin.
  5. Falls erfolgreich, klicke Plugin aktivieren, um es zu aktivieren, oder Zum Plugin-Installer zurückkehren für weitere Aktionen.

Manuelle Plugin-Installation

Es gibt einige wenige Fälle, in denen die manuelle Installation eines WordPress-Plugins angebracht ist.

  • Wenn du den Speicherort und den Installationsprozess eines WordPress-Plugins kontrollieren möchtest.
  • Falls dein Server keine automatische Installation eines WordPress-Plugins erlaubt.
  • Wenn du die neueste Entwicklungsversion ausprobieren möchtest.

Die manuelle Installation eines WordPress-Plugins setzt FTP-Kenntnisse sowie das Bewusstsein voraus, dass du deine Website aufs Spiel setzen könntest, wenn du ein WordPress-Plugin installierst, dass mit der aktuellen Version nicht kompatibel ist oder aus einer unzuverlässigen Quelle stammt.

Sichere deine Website komplett, bevor du weitermachst.

Um ein WordPress-Plugin von Hand zu installieren:

  • Download your WordPress Plugin to your desktop.
  • Falls du es als Zip-Archiv herunterlagen hast, entpacke den Plugin-Ordner auf deinem Desktop.
  • Lade den Plugin-Ordner mit deinem FTP-Programm in den Ordner wp-content/plugins in deinem WordPress-Verzeichnis hoch.
  • Geh zum Plugins-Bildschirm und such das neu hochgeladene Plugin in der Liste.
  • Klicke Aktivieren, um es zu aktivieren.

FAQ

tl;dr

Dieses Plugin verbindet dein WordPress-Blog mit beliebten sozialen Plattformen wie Mastodon und macht es damit einem größeren Publikum zugänglich. Einmal installiert, können dir Benutzer auf diesen Plattformen folgen, wodurch deine neuen Beiträge in ihren Feeds erscheinen.

Wie ist der Status dieses Plugins?

Bereits Implementiert:

  • Blog-Profilseiten (JSON-Darstellung)
  • Autoren-Profilseiten (JSON-Darstellung)
  • individuelle Links
  • funktionaler Posteingang/-ausgang
  • folgen (Folgen annehmen)
  • Beiträge teilen
  • Kommentare/Reaktionen erhalten
  • Signaturprüfung
  • Unterstützung für verschachtelte Kommentare

Noch zu implementieren:

  • Shortcodes durch Layout-Blöcke ersetzt

Was ist „ActivityPub für WordPress“

ActivityPub for WordPress erweitert WordPress um einige Fediverse-Funktionen, konkurriert aber nicht mit Plattformen wie Friendica oder Mastodon. Wenn du ein dezentrales Social Network betreiben möchtest, verwende bitte Mastodon oder GNU social.

Was, wenn dein Blog in einem Unterverzeichnis deines Webservers liegt?

Damit webfinger funktioniert, muss es auf das Stammverzeichnis der URL abgebildet werden, auf der sich Dein Blog befindet.

Apache

Füge folgendes zur .htaccess-Datei im Hauptverzeichnis hinzu:

RedirectMatch "^\/\.well-known/(webfinger|nodeinfo|x-nodeinfo2)(.*)$" /blog/.well-known/$1$2

Wobei ‚blog‘ der Pfad zu dem Unterverzeichnis ist, in dem sich Dein Blog befindet.

Nginx

Füge der site.conf in sites-available Folgendes hinzu:

location ~* /.well-known {
    allow all;
    try_files $uri $uri/ /blog/?$args;
}

Wobei ‚blog‘ der Pfad zu dem Unterverzeichnis ist, in dem sich Dein Blog befindet.

Was, wenn du dein Blog in einem Unterverzeichnis betreibst, aber eine andere [wp_siteurl](https://wordpress.org/documentation/article/giving-wordpress-its-own-directory/) hast?

In diesem Fall benötigst du den Redirect nicht, weil sich die index.php darum kümmert.

Konstanten

Das Plugin verwendet PHP-Konstanten, um sein Standardverhalten ein- und auszuschalten oder zu ändern. Benutze diese bitte vorsichtig und nur, wenn du weißt, was du tust.

  • ACTIVITYPUB_REST_NAMESPACE – Standard-Namensraum des REST-Endpunkts ändern. Standard: activitypub/1.0.
  • ACTIVITYPUB_EXCERPT_LENGTH – Länge des Textauszugs ändern. Standard: 400.
  • ACTIVITYPUB_SHOW_PLUGIN_RECOMMENDATIONS – Plugin-Empfehlungen in den ActivityPub-Einstellungen anzeigen. Standard: true.
  • ACTIVITYPUB_MAX_IMAGE_ATTACHMENTS – Anzahl zu föderierender Anhänge ändern. Standard: 3.
  • ACTIVITYPUB_HASHTAGS_REGEXP – Standard-Regex zur Erkennung von Hashtext in Text ändern. Standard: (?:(?<=\s)|(?<=<p>)|(?<=<br>)|^)#([A-Za-z0-9_]+)(?:(?=\s|[[:punct:]]|$)).
  • ACTIVITYPUB_USERNAME_REGEXP – Standard-Regex zur Erkennung von @-Replies in Text ändern. Standard: (?:([A-Za-z0-9\._-]+)@((?:[A-Za-z0-9_-]+\.)+[A-Za-z]+)).
  • ACTIVITYPUB_CUSTOM_POST_CONTENT – Standard-Template für Activities ändern. Standard: <strong>[ap_title]</strong>\n\n[ap_content]\n\n[ap_hashtags]\n\n[ap_shortlink].
  • ACTIVITYPUB_AUTHORIZED_FETCH – AUTHORIZED_FETCH aktivieren. Standard: false.
  • ACTIVITYPUB_DISABLE_REWRITES – Automatisches Anlegen von mod_rewrite-Regeln deaktiveren. Standard: false.
  • ACTIVITYPUB_DISABLE_INCOMING_INTERACTIONS – Eingehende Antworten/Kommentare/Likes blockieren. Standard: false.
  • ACTIVITYPUB_DISABLE_OUTGOING_INTERACTIONS – Ausgehende Antworten/Kommentare/Likes deaktivieren. Standard: false.
  • ACTIVITYPUB_SHARED_INBOX_FEATURE – Gemeinsame Inbox aktivieren. Standard: false.
  • ACTIVITYPUB_SEND_VARY_HEADER – Aktivieren, um den Header Vary: Accept zu senden. Standard: false.

Wo kannst du deine Follower verwalten?

Wenn du den Blog-Benutzer aktiviert hast, findest du die Liste seiner Follower in den Einstellungen unter /wp-admin/options-general.php?page=activitypub&tab=followers.

Die Follower eines Benutzers finden sich im Menü unter „Benutzer“ -> „Follower“ oder unter wp-admin/users.php?page=activitypub-followers-list.

Aus Datenschutzgründen ist es nicht möglich, die Follower anderer Benutzer zu sehen.

Rezensionen

25. April 2024 5 Antworten
Nice when it works, sadly most of the time it just doesn’t work.
22. März 2024
I was an early(ish) adopter of the plugin when I first learned of it. I installed it on a couple of self-hosted sites that I wanted to officially federate, and now I am at the point where every site I have has Activitypub installed.
19. Februar 2024
The next great social network is just the Web. This plugin is the most important feature in WordPress. It enables over 40% of the entire Web to directly own their social profiles, relationships with their audiences, and distribution. I look forward to the continued iteration of this plugin. Each release brings new features that lessen the need for creators to have a separate Mastodon account.
Alle 26 Rezensionen lesen

Mitwirkende & Entwickler

„ActivityPub“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:

Mitwirkende

„ActivityPub“ wurde in 24 Sprachen übersetzt. Danke an die Übersetzerinnen und Übersetzer für ihre Mitwirkung.

Übersetze „ActivityPub“ in deine Sprache.

Interessiert an der Entwicklung?

Durchstöbere den Code, sieh dir das SVN Repository an oder abonniere das Entwicklungsprotokoll per RSS.

Änderungsprotokoll

2.4.0

  • Added: A core/embed block filter to transform iframes to links
  • Added: Basic support of incoming Announces
  • Added: Improve attachment handling
  • Added: Notifications: Introduce general class and use it for new follows
  • Added: Always fall back to get_by_username if one of the above fail
  • Added: Notification support for Jetpack
  • Added: EMA: Support for fetching external statuses without replies
  • Added: EMA: Remote context
  • Added: EMA: Allow searching for URLs
  • Added: EMA: Ensuring numeric ids is now done in EMA directly
  • Added: Podcast support
  • Added: Follower count to „At a Glance“ dashboard widget
  • Improved: Use Note as default Object-Type, instead of Article
  • Improved: Improve AUTHORIZED_FETCH
  • Improved: Only send Mentions to comments in the direct hierarchy
  • Improved: Improve transformer
  • Improved: Improve Lemmy compatibility
  • Improved: Updated JS dependencies
  • Fixed: EMA: Add missing static keyword and try to lookup if the id is 0
  • Fixed: Blog-wide account when WordPress is in subdirectory
  • Fixed: Funkwhale URLs
  • Fixed: Prevent infinite loops in get_comment_ancestors
  • Fixed: Better Content-Negotiation handling

2.3.1

  • Added: Enable Mastodon Apps: Add remote outbox fetching
  • Added: Help texts
  • Fixed: Compatibility issues with Discourse
  • Fixed: Do not announce replies
  • Fixed: Also delete interactions with deleted person
  • Fixed: Check Author-URL only if user is enabled for ActivityPub
  • Fixed: Generate comment IDs for federation from home_url
  • Removed: Beta label from the #Hashtag settings

2.3.0

  • Added: Mark links as „unhandled-link“ and „status-link“, for a better UX in the Mastodon App
  • Added: Enable-Mastodon-Apps: Provide followers
  • Added: Enable-Mastodon-Apps: Extend account with ActivityPub data
  • Added: Enable-Mastodon-Apps: Search in followers
  • Added: Add alt support for images (for Block and Classic-Editor)
  • Fixed: Counter for system users outbox
  • Fixed: Don’t set a default actor type in the actor class
  • Fixed: Outbox collection for blog and application user
  • Changed: A better default content handling based on the Object Type
  • Changed: Improve User management
  • Changed: Federated replies: Improved UX for „your reply will federate“
  • Changed: Comment reply federation: support is_single_user sites
  • Changed: Mask WordPress version number
  • Changed: Improve remote reply handling
  • Changed: Remote Reply: limit enqueue to when needed
  • Changed: Abstract shared Dialog code

See full Changelog on GitHub.