This Wednesday July 31st I achieved a breakthrough: I finally managed to federate my Wordpress site.

What does it mean? My personal website (which I had been managing on Wordpress since 2009) has acquired superpowers thanks to the ActivityPub Wordpress plugin:

  • the site now has a presence on the Fediverse: it has its own profile, which people can follow from many instances: @ele@elenarossini.com
  • whenever I publish a new blog post, it shows up immediately in the Fediverse as a social post
  • when people reply to the social post from Mastodon or Friendica or another Fediverse network, the replies show up under the blog post as comments
  • my Wordpress dashboard now has a new item: “Followers (blog)” where I can see who is following my Wordpress site (names, Fediverse usernames and when they began following)

And this is just scratching the surface. The ActivityPub Wordpress plugin is supercharging my blog posts AND my Fediverse posts and I am excited to show you, in depth, the amazing things it can do.

This is a total game changer for writers, artists, creative people, entrepreneurs and solopreneurs, educators, governmental entities, non-profits - and any professional category you may think of. You can finally take back power from Big Tech, free yourself from algorithmic shenanigans (“Aunty Algo” as the official Instagram account once said), have full ownership of your content… AND your social graph.

It’s revolutionary. This feels like the future of social media and of publishing - except: the future is already here, made possible by the Fediverse and ActivityPub.

I posted about all this on Meta’s Threads – hold your audible gasp: the only posts I publish there are about the Fediverse (with the goal to attract more people to it, away from Meta’s Galactic Empire, with the implicit message “look what you’re missing out on”). Anyway, this is an insightful comment by Aaron Ross Powell, who quoted my post:

We used to have a thriving blogosphere, but it receded and splintered, and was replaced with social media (primarily Twitter) for its conversational component and newsletters (primarily Substack) for its bigger-than-a-couple-hundred-characters thinking out loud aspect. What I'm most excited about with the emerging fediverse is that we can maybe bring back blogging, without losing what writers and readers have found appealing about social media and newsletters.

Perfectly said!

Why is this “revolutionary”? A word about Wordpress

Am I overstating the impact of the ActivityPub Wordpress plugin? Not at all. You know why? According to recent statistics shared by WP Zoom:

  • Around 474 million websites are built on WordPress
  • WordPress dominates the CMS market with a 62.7% share

474 MILLION websites! Imagine what would happen if they all federated – the monthly active user count of the Fediverse would quickly surpass that of several well-known commercial social media platforms.

How to federate your Wordpress site with the ActivityPub plugin (and what to do if you encounter problems)

Finding and activating the ActivityPub for Wordpress plugin is easy and quick: you simply have to log into your Wordpress Dashboard, click on “Plugins” > “Add new plugin” and look for ActivityPub by Matthias Pfefferle & Automattic. Set-up takes a few extra minutes.

Under Wordpress Settings you now see a new item: “ActivityPub”. When you click on it, you can see (and edit) the username and profile URL that your site will have on the Fediverse.

a screenshot of the ActivityPub plugin settings in my Wordpress

So far so good.

I had attempted this implementation a year ago but even after I activated the plugin nothing happened, so I gave up. I tried again this Monday, same result. Several online commenters shared the same experience. I suspected this had something to do with my Wordpress setup of 20 plugins, with super tight security measures to protect the site from malicious code injection and brute force attacks.

I kept getting an error message in my “Site Health” dashboard saying “Webfinger endpoint is not accessible”. I installed the webfinger plugin by Matthias Pfefferle, but this didn’t resolve the issue. I reached out to Matthias via Mastodon and he kindly offered advice. I tried to do what he suggested, but the problem persisted until… I had a breakthrough. I found a post about this problem that mentioned an ingenious workaround: manually creating and uploading the webfinger file to the hidden root folder .well-known. This made the “Webfinger endpoint is not accessible” warning disappear. I published a new blog post but neither the post nor my website profile appeared in the Fediverse. I posted a toot about my Wordpress troubles and went to sleep feeling a bit dejected. When I woke up the following morning I found a Mastodon message by user @Oblomov who suggested that the profile link I was using could be the problem (side note: I LOVE the camaraderie and generosity of people on the Fediverse). I changed a few lines of code in the webfinger file, re-published the blog post and magically, it appeared in my mentions on Mastodon (because I had included my Mastodon handle in the post). I could not believe my eyes and felt like screaming from joy.

So very long story short, if you attempt to federate your Wordpress blog and nothing happens, maybe try manually uploading the webfinger file to the root folder .well-known. Important: you need to remove the extension .txt, the webfinger file should just be named webfinger (with no file extension).

I was jubilant on Mastodon: I boosted the federated post and expressed my joy about it. Congratulatory comments from the Fediverse started coming in. Soon, some users began reporting that when they clicked on the URL of the blog post (from its social post), the blog post appeared as JSON code and not a normal webpage. Oh no. Whenever I would purge the cache the page would resume working correctly… but then after a few minutes the problem would appear again. I remembered reading that Matthias had recommended using a specific caching plugin because several were not compatible with ActivityPub. So I tracked down his post and found that he recommended WP Super Cache by Automattic. I disabled and deleted my previous caching plugin, installed and activated WP Super Cache and the problems disappeared. Everything is now working perfectly (yay!)

So, very very long story short, if you have problems with the webfinger file you need to install it manually AND you also need to use WP Super Cache as your caching plugin to have your federated blog working correctly. That is all!

The magic of the ActivityPub Wordpress plugin: what happens when you publish a new post

I hit publish on the blog post, which went live on my site:

a screenshot of my first federated blog post, as it appeared on my site
a screenshot of my first federated blog post, as it appeared on my site

And then, it also appeared seamlessly in the feeds of my other Fediverse profiles.

Here is how it showed up on Mastodon:

a screenshot of the federated blog post, as it appeared on Mastodon

And on Friendica (I will write about this network in a future installment of this series):

a screenshot of the federated blog post, as it appeared on Friendica
a screenshot of the federated blog post, as it appeared on Friendica

Two big things that immediately stood out to me:

  • the hyperlinks from the blog post keep working as hyperlinks in the Fediverse social post. This is incredibly cool. I had admired this functionality of micro.blog and I love being able to supercharge my federated blog with hyperlinks. What’s the big deal about it, you may wonder? Words and sentences from the social post (of my federated blog) can turn into hyperlinks, so that I won’t have to “waste” characters and include full URLs in a message. Instead of saying “check out my newsletter The Future is Federated: https://blog.elenarossini.com/tag/fediverse/#post-list” I can say “check out my newsletter The Future is Federated”. It’s much more elegant and streamlined.
  • In the blog post I had added hyperlinks to my Mastodon and Pixelfed handles. So when the blog post went live, I got a notification on Mastodon that @_elena@mastodon.social had been mentioned by @ele@elenarossini.com. How cool is that? This was the moment when I realized that federation had worked and when I saw how the blog post appeared on Mastodon.

There’s more: the magic of comments.

I boosted my federated post so that my 950 or so followers could see it. It’s funny that in my enthusiasm over successful federation I had completely forgotten to check my Wordpress dashboard and I found 10 comments in the moderation queue, waiting to be approved - they were all technically replies to the federated blog, written by people on the Fediverse. Once I approved them, they appeared under the blog post, like magic.

As I mentioned in the introduction, the number of followers of my federated blog is shown prominently in my Wordpress dashboard, next to the number of pages and posts the blog has. When I click on it, I can see their handles. It’s just so cool!

a screenshot of my Wordpress dashboard, showing the number of posts, comments, pages AND NOW blog followers!
a screenshot of my Wordpress dashboard, showing the number of posts, comments, pages AND NOW blog followers!

This changes everything

I have had the website elenarossini.com for over 15 years and it often felt like a shop window, with little foot traffic coming by, essentially gathering dust and spiderwebs.

Federation is breathing new life into my site: elenarossini.com is now a member of the Fediverse, with newfound powers of connection and discoverability, away from the walled gardens of Big Tech.

This truly changes everything and I’m incredibly grateful for the hard work of Evan Prodromou, Christine Lemmer-Webber, Matthias Pfefferle and everyone involved in making ActivityPub and the ActivityPub Wordpress plugin a reality.

I apologize if this post feels written in a rush… because it was. It’s my last day of vacation in Italy and I need to pack up my and my toddler’s belongings before we return to Paris. I simply didn’t want to wait an extra week to publish this: I feel like shouting from the rooftops how cool a federated website is and I wish more people will get on board and federate their own Wordpress sites.

This is the 7th post in my series The Future is Federated; you can find all previous posts at this link.

Onwards and upwards!

Elena

P.S.: you may be confused that I now have two blogs: a federated one in Wordpress and a not federated (yet) Ghost blog + newsletter (which you are reading here). I know!!! When I quit Substack in January I turned to Ghost; I've been enjoying its elegance, ease of use, incredible functionalities and being able to communicate with interested readers via email newsletters. The Future is Federated and two of my other newsletters are still powered by Ghost because email guarantees that people get everything new I post directly in their inbox. I see my Ghost blog & newsletter as something for longreads and more “formal” blog posts and my Wordpress blog for shorter, spur-of-the-moment posts that immediately get federated. You may follow one, or both, it’s totally up to you, but I just wanted to clarify what sets them apart. See you in the Fediverse!


💓 Did you enjoy this post? Share it with a friend!
👫 Follow me on Mastodon (my favorite network!) and Pixelfed. All my other social media links are available here.
📽️ If you'd like to support my work, you could buy or rent my documentary The Illusionists on the globalization of beauty. Watch the opening on Vimeo:

Watch the first 4 minutes / teaser of The Illusionists on Vimeo

💌 If you'd like to say hi, my contact information is here
✏️ If this post resonated with you, leave a comment!