ActivityPub for WordPress
Branch: master
Clone or download
Latest commit 6344e10 Feb 4, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin try it with curl Nov 6, 2018
includes changed default value Feb 4, 2019
languages changed default value Feb 4, 2019
templates changed default value Feb 4, 2019
tests fixed typo Sep 24, 2018
.gitignore implemented "follow" Dec 7, 2018
.svnignore ignore .svnignore Nov 5, 2018
.travis.yml small fixes Dec 30, 2018
Gruntfile.js initial Aug 18, 2018
LICENSE Initial commit Jul 10, 2018 changed default value Feb 4, 2019
activitypub.php added follower endpoint Feb 4, 2019
composer.json initial Aug 18, 2018
docker-compose.yml initial Aug 18, 2018
package.json initial Aug 18, 2018
phpcs.xml min PHP 5.6 version Oct 2, 2018
phpunit.xml.dist basic outbox support Sep 24, 2018
readme.txt changed default value Feb 4, 2019


Contributors: pfefferle
Donate link:
Tags: OStatus, fediverse, activitypub, activitystream
Requires at least: 4.7
Tested up to: 5.1.0
Stable tag: 0.3.2
Requires PHP: 5.6
License: MIT
License URI:

The ActivityPub protocol is a decentralized social networking protocol based upon the ActivityStreams 2.0 data format.


This is BETA software, see the FAQ to see the current feature set or rather what is still planned.

The plugin implements the ActivityPub protocol for your Blog. Your readers will be able to follow your Blogposts on Mastodon and other Federated Plattforms that support ActivityPub.

Frequently Asked Questions

What is the status of this plugin?


  • profile pages (JSON representation)
  • custom links
  • functional inbox/outbox
  • follow (accept follows)
  • share posts
  • receive comments/reactions

To implement:

  • signature verification
  • better WordPress integration
  • better configuration possibilities
  • threaded comments support

What is "ActivityPub for WordPress"

ActivityPub for WordPress extends WordPress with some fediverse features, but it does not compete with plattforms like or Mastodon. If you want to run a decentralized social network, please use Mastodon or

What are the differences between this plugin and Pterotype?


ActivityPub for WordPress is compatible with OStatus and IndieWeb plugin suites. Pterotype is incompatible with the standalone WebFinger plugin plugin, so it can't be run together with OStatus.

Custom tables

Pterotype creates/uses a bunch of custom tables, ActivityPub for WordPress only uses the native tables and adds as few meta data as possible.


Project maintained on github at pfefferle/wordpress-activitypub.


  • added "followers" endpoint
  • change activity content from blog 'excerpt' to blog 'content'


  • better json encoding


  • basic hashtag support
  • temporarily deactived likes and boosts
  • added support for actor objects
  • fixed encoding issue


  • customizable backlink (permalink or shorturl)
  • show profile-identifiers also on profile settings


  • added option to switch between content and excerpt
  • removed html and duplicateded new-lines


  • fixed "excerpt" in AS JSON
  • added settings for the activity-summary and for the activity-object-type


  • added basic WebFinger support
  • added basic NodeInfo support
  • fully functional "follow" activity
  • send new posts to your followers
  • receive comments from your followers


  • refactorins
  • functional inbox
  • nicer profile views


  • initial


Follow the normal instructions for installing WordPress plugins.

Automatic Plugin Installation

To add a WordPress Plugin using the built-in plugin installer:

  1. Go to Plugins > Add New.
  2. Type "activitypub" into the Search Plugins box.
  3. Find the WordPress Plugin you wish to install.
    1. Click Details for more information about the Plugin and instructions you may wish to print or save to help setup the Plugin.
    2. Click Install Now to install the WordPress Plugin.
  4. The resulting installation screen will list the installation as successful or note any problems during the install.
  5. If successful, click Activate Plugin to activate it, or Return to Plugin Installer for further actions.

Manual Plugin Installation

There are a few cases when manually installing a WordPress Plugin is appropriate.

  • If you wish to control the placement and the process of installing a WordPress Plugin.
  • If your server does not permit automatic installation of a WordPress Plugin.
  • If you want to try the latest development version.

Installation of a WordPress Plugin manually requires FTP familiarity and the awareness that you may put your site at risk if you install a WordPress Plugin incompatible with the current version or from an unreliable source.

Backup your site completely before proceeding.

To install a WordPress Plugin manually:

  • Download your WordPress Plugin to your desktop.
  • If downloaded as a zip archive, extract the Plugin folder to your desktop.
  • With your FTP program, upload the Plugin folder to the wp-content/plugins folder in your WordPress directory online.
  • Go to Plugins screen and find the newly uploaded Plugin in the list.
  • Click Activate to activate it.