Creating new authors

We currently create email aliases for new authors so we can quickly create accounts without having to rely on the writer accepting the invite email. However, we are moving to a new email provider which limits the number of aliases we can use.

How can I create authors quickly and easily in Ghost without having to worry about a writer accepting the invite email?

Use a gmail address, and the magic + trick.

youremail+writerone@gmail.com, youremail+writetwo@gmail.com both go to youremail@gmail.com.

Any alternative that doesn’t rely on Google? :face_vomiting:

I’m sure there are lots!

For example, if you have your DNS with Cloudflare, you could do wildcard email forwarding to the inbox of your choice.

Using the Universal Import, you can upload placeholder authors via JSON. The import doesn’t generate emails and the account doesn’t need to be accepted by anyone so you can use anything that validates as an email address here.

You can then edit the email, slug, name and role for one of these placeholders from inside admin each time you want to issue an author account to a real person. They’ll need to do a password reset from /ghost/#/signin to start using the login if that’s what they’re going to do, but if you’re just using the staff list to add a byline, and assign it to the new author’s articles, you’re good to go.

The JSON can be empty apart from the authors, and it will then just add to the rest of your content and settings without breaking anything. The example below is what I use regularly. Save this as “authors.json” and use it to refill your placeholders whenever you need

{
  "meta": {
    "exported_on": 1676913455963,
    "version": "2.0.0"
  },
  "data": {
    "users": [
      {
        "email": "contriutorone@example.com",
        "slug": "contributor-one",
        "name": "Contributor One",
        "roles": [
          "Contributor"
        ]
      },
      {
        "email": "contriutortwo@example.com",
        "slug": "contributor-two",
        "name": "Contributor Two",
        "roles": [
          "Contributor"
        ]
      },
      {
        "email": "contriutorthree@example.com",
        "slug": "contributor-three",
        "name": "Contributor Three",
        "roles": [
          "Contributor"
        ]
      },
      {
        "email": "contriutorfour@example.com",
        "slug": "contributor-four",
        "name": "Contributor Four",
        "roles": [
          "Contributor"
        ]
      }
    ]
  }
}```
2 Likes