Introducing Phantom Admin

Introducing Phantom Admin

Phantom Admin is an add-on admin panel for Ghost, built to make it easier to work with large numbers of posts, sort and filter, and perform bulk actions.

It installs as a custom page in any theme and requires no changes to core.  If you can unzip a theme, copy a file into it, and rezip it, you can run Phantom Admin.

Recent changes:

Version 0.95 adds a download button for members data, showing which of your members have which types of subscriptions, open rates, and more. To use, enter BOTH Admin API and Content API keys, click 'setup', then the button to download data will appear. The CSV file can be opened with any spreadsheet software, including Excel.

Version 0.93 adds a 'duplicate' button for posts and pages. It'll create a new copy of your post/page with the same name, default slug (typically by adding a -2), authos(s), tag(s), and content (including images). Your duplicate is created in draft form, ready to edit, customize, and publish in the Ghost editor.

Version 0.92 switches to JWTs. It is confirmed to work on Ghost Pro with a typical setup (including custom domain).

Version 0.91 added author filtering.

How does it work? Phantom Admin takes advantage of the Ghost Admin API, and runs lots of client side javascript for all the functionality.  Version 0.9 used the admin cookie for validation.  Version 0.92+ instead uses your admin API key (which you'll have to paste in) to make API calls on your behalf, which avoids some CORS issues.  Either way, it's secure, since no one can connect to your admin API without the admin cookie.  A user who stumbles upon the page will have no way to make any queries.  Only someone with a copy of the Admin API key can make queries.

🛑
Important: With great power comes great responsibility. Back up your content regularly, and certainly before using the bulk deletion tool. (Deletion is irreversible once you click confirm. This is exactly the same irreversibility that you get if you delete posts through the Ghost admin portal.)

Installation:  

  • You already made a backup of your site content, right?
  • Download your theme file (as a zip) and add the custom-phantom-admin.hbs file to it.  Upload your theme's zip file.  (Alternately, if you have shell access on the server, just drop the file on the server in the active theme folder and then reload Ghost.)  
  • Create a page, and select the Phantom Admin template type from the right side menu.  Note the address of that page.  Hit publish, then navigate over to your new page.  
👉
Important to know: Phantom Admin needs to make Admin API calls to the admin API (which uses the admin site URL) from the front end web site. Your front end website already makes Content API call to the same domain successfully, so this should 'just work' for most users. If you have an edge case that doesn't, let's talk!

How to use:  

Set-up:

  • Visit Ghost Admin > Settings > Integrations and generate an Admin API key.  Copy it, then visit the Phantom Admin page (not in the editor).
  • Paste in your Admin API key.  Also paste in your Content API key if you want to use the members data download feature.
  • Check that Phantom Admin has your admin URL correct - adjust if necessary.   (For a typical install, you need only the domain, no /ghost/.)  
  • Choose 'posts' or 'pages', then click the setup button.  Phantom Admin will check that it has API access, and set up the filtering options.  [If you want to change between posts and pages later, repeat this step and the filtering step below.

Filter & retrieve records: Select one or more filter terms and the number of posts/pages you want, then click the button to retrieve posts/pages.  

Sort or page through:  You can click the headers to sort records, or use the "next" and "previous" buttons to scroll through them.  (Note that selections don't persist from page to page, so take any actions needed before moving to the next page.)

Do your thing!   You can select all posts or click individual posts, edit individually or in bulk.  Need to retag a bunch of posts? No problem!  Bulk publish?  Sure thing!  Delete a bunch of drafts you made while testing an integration?  You betcha, all in two clicks.  

Tip:  You can sort by title, slug, status, or date.  Just click the header.  Sorting by author or tag doesn't work (it's an API limitation), but you can use the filters to see only the posts by the author or tag you're interested in.

Is it beautiful?  Well, no, not yet.  But it's super functional.

Version 0.93 is tested and very functional, but not yet super pretty.  Purchases include a year of updates and bug fixes.

Important to know:  Purchasers will receive a copy of Ghost Admin within 24 hours of purchase.  It isn't instantaneous, sorry! :)

Super big kudos to Forward Kentucky for paying for (some of) the original development and then encouraging me to sell it to you! Their site, https://forwardky.com is an awesome example of what you can build on Ghost, and you should check it out. As of now, they're managing 4000+ posts with Phantom Admin.