Discussion
Loading...

Post

Log in
  • About
  • Code of conduct
  • Privacy
  • Users
  • Instances
  • About Bonfire
Jeremy Herve
Jeremy Herve
@jeremy@herve.bzh  ·  activity timestamp 2 days ago
⁂ Article

WordLand on self-hosted sites

Thinking about the best approach to make the WordLand editor available for every self-hosted WordPress site

Are you familiar with WordLand? I’ve mentioned it on this blog a few times: it’s a WordPress editor, designed for writers.

@davew built WordLand using the WordPress.com REST API, thus making the app available to everyone with a WordPress.com account. Once you’re logged in, you can pick any WordPress site connected to your account. It can be a WordPress.com site. It can also be a site hosted on another platform but using the Jetpack plugin to allow it to communicate with WordPress.com.

It works really well. It allows you to log in only once, to manage and publish on multiple sites from a central editor dashboard. This was one of the ideas behind the WordPress.com REST API when it was first built.

Screenshot of the WorldLand.social homepage

Of course, this means the WordLand app is only available to folks with a WordPress.com account, and using a site that’s either hosted on WordPress.com or where they’re able to install plugins like Jetpack.

If WordLand were to drop that requirement, it would be immediately usable by more people. It would open it to authors on sites where they don’t have permissions to install plugins, for example.

In this post, Dave outlined his idea for making WordLand available for self-hosted WordPress sites.

I’ve thought a bit about what that switch would mean in practice. I thought I’d share my first ideas here, for you Dave to consider as you start working on this project.

In my mind there are a few things to consider to get WordLand to work with self-hosted WordPress sites.

Mapping endpoint requirements

Self-hosted sites ship with a REST API and endpoints, listed here.
Those endpoints allow viewing, publishing and editing posts, which is the base of what WordLand does. They also allow listing and editing categories, uploading media,…

A first step may be to map the WordPress.com API endpoints used by WordLand with their equivalents on self-hosted sites.
The REST API docs will be a big help there. I am thinking you may have all WordLand needs with the endpoints available on all self-hosted WordPress sites today.

As part of that mapping project, you’ll see that the expected schema is different for the 2 APIs. Although similar, there are differences. You’ll find the biggest differences may be in how categories are handled for example, since they are different from site to site. That’s something worth mapping as well, since it will mean making changes to the app accordingly.

Authentication

Once you have the endpoints figured out, you’ll need to tackle what’s probably going to be the hardest part: authentication.

With self-hosted sites, there is no centralized way to handle authentication. Folks will need to authenticate for each site where they want to publish. Application passwords are probably the best approach to take. They are available for all self-hosted sites and don’t require site owners to install anything. You’ll need to build a flow where site owners start by providing a site URL instead of clicking a log in button. That site URL, when passed to WordLand, allows the app to hit the REST API for that site, get the authentication URL, and redirect the site owner there so they can log in and go through the flow to create an application password and then come back to WordLand with that password.
They’ll need to repeat that for every new site they want to use with WordLand.

A WordLand.social account for everyone?

Another alternative may be to first offer every WordLand user an option to log in to an account created with WordLand. The different connections and authentication information for one or more sites would be stored in that account. It would allow WordLand.social to keep working like it does today, as a central platform from which you can publish to multiple sites.

And the extra

Keep in mind that Jetpack and WordPress.com also provide more than just the REST API endpoint and the authentication layers. They also provide other features you rely on in WordLand, like markdown support.

That’s all what comes to mind at first. Hopefully it helps you get started!

Screenshot of the WorldLand.social homepage
Screenshot of the WorldLand.social homepage
Screenshot of the WorldLand.social homepage

About WordLand

The best editor for writers who publish to WordPress.
Matt Mullenweg

Dance to Calypso

One of the hardest things to do in technology is disrupt yourself. But we’re trying our darndest, and have some cool news to introduce today. When I took on the responsibility of CEO of Autom…

WordPress.org sites and WordLand

WordPress Developer Resources

Reference

The WordPress REST API is organized around REST, and is designed to have predictable, resource-oriented URLs and to use HTTP response codes…
WordPress Developer Resources

Schema

Overview
WordPress Developer Resources

Authentication – REST API Handbook | Developer.WordPress.org

Cookie Authentication
Make WordPress Core

Application Passwords: Integration Guide

WordPress 5.6 will finally see the introduction of a new system for making authenticated requests to various WordPress APIs — Application Passwords. The existing cookie-based authentication s…
  • Copy link
  • Flag this article
  • Block

bonfire.cafe

A space for Bonfire maintainers and contributors to communicate

bonfire.cafe: About · Code of conduct · Privacy · Users · Instances
Bonfire social · 1.0.1-beta.35 no JS en
Automatic federation enabled
Log in
  • Explore
  • About
  • Members
  • Code of Conduct