Share one site with a developer

Hand a developer one site. Not your password.

Share a single site by email. The developer signs in with their own Zinn Digital® account, pulls the site onto their machine with our free command-line tool — files and database — and works on it locally. They never see your billing, they never reach your other sites, and you can end it the moment the job is done.

All developer docs

What you do, once

Three steps in your dashboard, on the site you want to share. The developer does not need an account yet — if they have never signed in, the invitation makes one when they accept it.

  1. Open the site, go to Security, choose Share this site

    Type their email address. That is the whole invitation — you never create a login for them, and you never hand over one of yours.

  2. Choose what they can do

    Viewer, Editor or Manager. A developer normally needs Editor: it is the role that can change files, open WordPress admin and take a copy of the site to work on.

  3. Give it an end date, if the work has one

    The grant simply stops counting on that date. Nobody has to remember to remove it, which is the part everyone forgets — the contractor who finished in March still has the keys in November.

Three roles, and one list that never changes

The role is per site, so the same person can be a viewer on one and an editor on another.

Viewer

Looks, and changes nothing. Sees the site, its logs and its backups. Right for a client who wants visibility, or an auditor.

Editor

The day-to-day developer. Deploys, clears the cache, opens WordPress admin, changes PHP — and takes a copy of the site, files and database, to work on locally.

Manager

Everything an editor does, plus restoring a backup over the live site, HTTPS and the CDN.

No role can delete the site, move it to another account, see or pay your bills, invite anyone else, or reach any other site you own. Those are not settings — there is no version of this where a collaborator has them.

What the developer runs

Zinnector® is our free, MIT-licensed command-line tool. It needs Node 24 or newer and nothing else — no Docker for the basics, no PHP on their machine.

  1. Install it

    npm install -g zinnector

    One package from npm. Nothing here needs an account yet.

  2. Sign in as themselves

    zinnector login

    This opens their browser and signs them in with their own account — the one the invitation went to. They never need your password, and you never need to give them one.

  3. See exactly what they were given

    zinnector sites

    The list shows the sites shared with them and nothing else. An empty list means the invitation has not been accepted, or access has ended.

  4. Pull the site down

    zinnector clone client-domain.com

    Themes, plugins, media and the database, into a local project. It leaves behind WordPress core and the live config file, and prints exactly what it took and what it did not, with counts.

  5. Run it locally, with your real content

    cd client-domain.com && zinnector dev --runtime docker

    This imports the database, rewrites the site's address to their machine, and opens it. They log in with the site's own WordPress accounts.

A copy of a site includes its database

That is usually exactly what a developer needs — without it they are looking at your theme against an empty site. It is also real personal data: whatever your visitors gave the site, from commenter addresses to customer orders. Three things follow, and we do all three.

Every copy is in your audit log

Who took it, when, and whether that archive carried the database. Recorded when the download is authorised, so it is there whatever the tool at the other end then does with it.

It is never committed by accident

The tool adds the database file to the project's ignore list in the same moment it writes it, so an absent-minded commit cannot publish your customers to a repository.

Or they can work without it

One flag takes the files only. Everything else works the same, and the developer can still build and deploy.

The questions people actually ask

Do I have to give them my password?

No, and there is no way to. The developer signs in with their own Zinn Digital® account. Sharing a password would also make your audit log useless, because everything they did would be recorded as you.

Can they see my other sites?

No. Access is granted one site at a time, and the restriction is enforced in the database itself rather than by hiding buttons — a collaborator asking for a site they were not given is answered as though it does not exist.

Do they get my customers' data?

If you give them Editor or Manager, they can take a copy of the site, and a copy of a site is its files and its database. You are told this while you choose the role, every copy is recorded in your audit log, and you can ask them to work files-only instead.

How do I end it?

Revoke it in the site's Security section. It takes effect immediately — the next command that developer runs cannot see the site. An expiry does the same thing on a date you set in advance.

Every flag, and what each one prints

The full Zinnector® command reference is generated from the tool itself, so it cannot drift from the version you have installed.

Open the command reference